牛客-删除公共字符
1.题目描述
2.题目链接
删除公共字符_牛客题霸_牛客网
3.代码解答
public class Main {public static void main(String[] args) {Scanner in = new Scanner(System.in);String a = in.nextLine();String b = in.nextLine();Set<Character>set=new HashSet<>();StringBuilder sb=new StringBuilder();for(int i=0;i<b.length();i++){set.add(b.charAt(i));}for(int i=0;i<a.length();i++){if(!set.contains(a.charAt(i))){sb.append(a.charAt(i));}}System.out.println(sb);}}
4.解题思路
题目要求输入两个字符串,在第一个字符串中删除所有在第二个字符串中存在的字符。
我们可以将第二个字符串存入HashSet中,利用HashSet的去重功能,得到所有在字符串二中存在的字符。
定义一个可变的字符串StringBuilder作为结果字符串。
然后遍历第一个字符串的所有字符,如果在HashSet中存在,就拼接到结果字符串中。
5.代码细节
Hash数组代替真正的Hash表
可以创建一个Boolean类型的数组来避免创建真正的容器,以减少开销。