길이가 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