定义一个字符串,针对字符串去重
时间: 2023-08-15 17:14:29 浏览: 42
要定义一个字符串,并且对字符串进行去重,可以使用以下代码:
```python
def remove_duplicates(string):
# 创建一个空集合用于存储不重复的字符
unique_chars = set()
# 创建一个空字符串用于存储去重后的结果
result = ""
# 遍历字符串的每个字符
for char in string:
# 如果字符不在集合中,则将其添加到集合和结果字符串中
if char not in unique_chars:
unique_chars.add(char)
result += char
return result
```
使用这个函数,你可以将字符串传递给 `remove_duplicates` 函数,并得到去重后的结果。例如:
```python
string = "aabbccddeeff"
result = remove_duplicates(string)
print(result) # 输出: "abcdef"
```
这将打印出去除重复字符后的字符串 "abcdef"。
相关问题
Java 键盘输入一串字符串,去重后输出
好的,您可以通过以下 Java 代码实现:
```java
import java.util.HashSet;
import java.util.Scanner;
import java.util.Set;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String str = scanner.nextLine();
Set<Character> set = new HashSet<>();
for (int i = 0; i < str.length(); i++) {
char ch = str.charAt(i);
set.add(ch);
}
StringBuilder sb = new StringBuilder();
for (char ch : set) {
sb.append(ch);
}
System.out.println(sb.toString());
}
}
```
首先,我们通过 `Scanner` 类获取用户输入的字符串。然后,我们定义了一个 `HashSet` 集合,遍历字符串中的每个字符,将其添加到该集合中。由于 `HashSet` 会自动去重,因此我们不需要进行额外的去重操作。
接着,我们使用 `StringBuilder` 类构建一个新的字符串,将 `HashSet` 中去重后的字符按照顺序添加到该字符串中。最后,我们使用 `System.out.println()` 方法将新字符串输出。
希望这个代码可以帮到您!
C语言 字符串去重排序
可以使用以下步骤来实现字符串去重排序:
1. 定义一个字符数组,用于存储去重后的字符。
2. 遍历原始字符串中的每个字符,判断该字符是否已经存在于字符数组中。
3. 如果不存在,则将该字符添加到字符数组中。
4. 对字符数组进行排序。
5. 将字符数组转换为字符串输出。
以下是一个示例代码:
```c
#include <stdio.h>
#include <string.h>
void remove_duplicates(char *str) {
int len = strlen(str);
char res[len];
int idx = 0;
for (int i = 0; i < len; i++) {
int j;
for (j = 0; j < idx; j++) {
if (res[j] == str[i]) {
break;
}
}
if (j == idx) {
res[idx++] = str[i];
}
}
res[idx] = '\0';
// 排序
qsort(res, idx, sizeof(char), cmp);
printf("%s\n", res);
}
int cmp(const void *a, const void *b) {
return *(char *)a - *(char *)b;
}
int main() {
char str[] = "abbcdeeff";
remove_duplicates(str);
return 0;
}
```
这个程序的输出结果是:abcdef。