Ich schaue auf die Frage "Code schreiben, um die doppelten Zeichen in einer Zeichenfolge ohne Verwendung eines zusätzlichen Puffers zu entfernen" in der Cracking Coding Book.entfernen doppelte Zeichen in einer Zeichenfolge
ich ein Programm mit der Lösung in dem Buch geschrieben habe:
public class test {
public static void main(String[] args) {
String str = "aaabbb";
char[] charArray = str.toCharArray();
System.out.println(charArray);
remove_V(charArray);
System.out.println(charArray);
}
public static void remove_V(char[] str) {
if (str == null) return;
int len = str.length;
if (len < 2) return;
int tail = 1;
for (int i = 1; i < len; ++i) {
int j;
for (j = 0; j < tail; ++j) {
if (str[i] == str[j]) break;
}
if (j == tail) {
str[tail] = str[i];
++tail;
}
}
str[tail] = 0;
}
}
testete ich das Programm mit „aaabbb“, aber die Ausgabe ich erhielt, war „abbb“. Bedeutet das, dass das Programm falsch ist?
Dies wird Ihnen helfen: http://stackoverflow.com/questions/4989091/removing-duplicates- von einer Zeichenkette in Java – d3r1ck