定义removeDuplicates字符串去重操作
时间: 2024-09-29 07:12:39 浏览: 40
华为笔试算法题汇总
字符串去重操作通常是指从给定的字符串中移除所有重复的字符,保留每个字符仅一次,同时保持原有的顺序。这个过程可以手动完成,也可以通过编程语言中的数据结构和算法来实现。常见的做法包括使用集合(如Python的set、Java的HashSet等)来存储遇到过的字符,因为集合内部不允许有重复元素。
例如,在Python中,你可以这样做:
```python
def remove_duplicates(s):
return ''.join(sorted(set(s), key=s.index))
s = "hello"
print(remove_duplicates(s)) # 输出 "ehllo"
```
这段代码首先将字符串转换为集合,然后排序并连接回一个新的字符串。
在Java中,则可以利用HashMap:
```java
import java.util.*;
public String removeDuplicates(String s) {
StringBuilder sb = new StringBuilder();
for (char c : s.toCharArray()) {
if (!sb.contains(String.valueOf(c))) {
sb.append(c);
}
}
return sb.toString();
}
String str = "hello";
System.out.println(removeDuplicates(str)); // 输出 "helo"
```
这里遍历字符串,如果字符不在StringBuilder中,就添加进去。
阅读全文