package huawei;
import java.util.HashSet;
import java.util.Iterator;
import java.util.LinkedHashSet;
import java.util.Scanner;
import java.util.Set;
import java.util.TreeSet;
/**
* 请编写一个字符串过滤程序,若字符串中出现多个相同的字符,将非首次出现的字符过滤掉。
比如字符串“abacacde”过滤结果为“abcde”。
示例
输入:“deefd” 输出:“def”
输入:“afafafaf” 输出:“af”
输入:“pppppppp” 输出:“p”
* @author USER
*
*/
public class StringFilter {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
String string = in.nextLine();
System.out.println(stringFilter(string));
}
private static String stringFilter(String string) {
// TODO Auto-generated method stub
char[] ch = string.toCharArray();
//Set set = new TreeSet();//TreeSet是排序后输出
//Set set = new HashSet();//HashSet是没有顺序输出
Set set = new LinkedHashSet();//只能用LinkedHashSet才能保持原有的顺序
for (int i = 0; i < ch.length; i++) {
set.add(ch[i]);
}
Iterator it = set.iterator();
String output = "";
char chs = 0;
while (it.hasNext()) {
chs = (char) it.next();
output = output + chs;
}
return output;
}
}
华为机试---字符串过滤
最新推荐文章于 2023-07-24 21:03:43 发布