길이가 256인 비어 있는 새 배열을 만들고 전체 문자열을 문자별로 탐색하고 새 배열의 값을 증가시킵니다. 끝에서 전체 배열을 탐색하고 값이 1인 첫 번째 문자를 반환합니다.
예시 1
aabccd -→2 1 2 1 → count가 1인 첫 번째 문자를 반환합니다. 즉, b입니다.
예시 2
using System; namespace ConsoleApplication{ public class Arrays{ public int ReturnIndexOfFirstUniqueCharachter(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 index; } } class Program{ static void Main(string[] args){ Arrays a = new Arrays(); Console.WriteLine(a.ReturnIndexOfFirstUniqueCharachter("bookisgreat")); Console.ReadLine(); } } }
출력
0