Я пытаюсь решить эту проблему с помощью JS, просто используя массив.Проверка целостности символов в строке
var str="abcdefgh";
for (i=0;i<255;i++){
arr[i]=false;
}
function check(){
for (i=0;i<str.length;i++){
if (arr[str.charCodeAt(i)]==true){
return false;
}
arr[str.charCodeAt(i)]=true;
}
return true;
}
Я инициализирует массив фиксированного размера 256, чтобы иметь логическое значение false
. Затем я устанавливаю значение для соответствующего индекса ASCII в значение true для символов в строке. И если я снова найду того же персонажа, я возвращаюсь false
.
При запуске программы я получаю false, даже если строка не содержит дубликатов символов.
ваш код кажется правильным, вы можете разместить тестовый случай за что он не работает? – dsharew