В общем вопросе об интервью предлагается написать алгоритм, который обнаруживает дубликаты в строке.Использование массива символов длиной 128 для отслеживания уже увиденных символов является хорошим способом решения этой проблемы за линейное время.
В C мы будем вводить что-то вроде
char seen_chars[128];
unsigned char c;
/* set seen_chars to all zeros, assign c */
seen_chars[ c ] = 1;
Toпометьте символ c как видимый.Конечно, это зависит от
(int) c
, возвращающего значение от 0 до 127.
Интересно, когда это не получится?Какие предположения заставляют этот код работать правильно?