1. 已经排序好的字符串,将重复的字符串保留一个
设两个标记:遍历标记和记录标记
遍历标记:pos
记录标记:index, 记录最终字符串的最后一个字节。
从第一个元素开始遍历,当前位置和有记录的位置不同,则拷贝,同时将记录标记向前置移,进行下一轮遍历。
如果当前遍历元素和有记录的元素相同,则把当前位置向前置移,进行下一轮遍历
public class RemoveDouble {
public static void remove(String str) {
if (str == null)
return;
int index = 0;
int len = str.length();
char[] cArray = str.toCharArray();
for (int pos = 1; pos < len; pos++) {
if (cArray[index] != cArray[pos]) {
index++;
cArray[index] = cArray[pos];
}
}
System.out.print(new String(cArray,0, index));
}
public static void main(String[] args) {
String str = "AABBDDEEFGHII";
System.out.println(str);
remove(str);
}
}