문자열에서 중복 문자를 제거하는 프로그램을 작성 중이고 이미 코드를 발견했지만 1 년 전에 게시되었지만 얻을 수없는 몇 가지 사항이 있습니다. understanding code that removes duplicate characters in a string (from cracking the coding interview)누군가이 기능을 설명해 주시겠습니까?
string remove_duplicates(string &s1)
{
int n=s1.size();
for(int i=n-1; i!=-1; --i)
for(int j=0; j<i; ++j) //why is j<i ?
{
if(s1[i]==s1[j])
{
int k=i; //What does the k do?
while(k!=n) //Why do we use loop here?
{
s1[k]=s1[k+1]; //why is k=k+1 ?
k++;
}
}
}
return s1;
}
실행되고, 그것으로 어떻게 변화 하는지를 코드가 진행됨). –
우선 문자열이 아니라 배열입니다. 두 번째로, 나는 이미 혼자서 그것을 알아내어 시험해 보았습니다. 그리고 그 이유를 모를 때 나는 그 질문을했습니다. 하지만 어쨌든 당신의 의견을 공유해 주셔서 감사합니다 :) – user4043493
또한,이 코드는 실제로 작동하지 않습니다. –