길이가 256인 비어 있는 새 배열을 만들고 전체 문자열을 문자별로 탐색하고 새 배열의 값을 증가시킵니다. 끝에서 전체 배열을 탐색하고 값이 1인 첫 번째 문자를 반환합니다.
예시 1
aabccd -→2 1 2 1 → count가 1인 첫 번째 문자를 반환합니다. 즉, ASCII 값으로 빼서 b입니다.
예시 2
using System; namespace ConsoleApplication{ public class Arrays{ public char ReturnCharacterOfFirstUniqueCharachter(string s){ int index = -1; int[] arrayValues = new int[256]; for (int i = 0; i < s.Length; i++){ int value = s[i] - 'a'; arrayValues[value] += 1; } for (int i = 0; i < s.Length; i++){ int value = s[i] - 'a'; if (arrayValues[value] == 1){ index = i; break; } } return s[index]; } } class Program{ static void Main(string[] args){ Arrays a = new Arrays(); Console.WriteLine(a.ReturnCharacterOfFirstUniqueCharachter("bbookisgreat")); Console.ReadLine(); } } }
출력
k