zoukankan      html  css  js  c++  java
  • 字符串去重

    这是我曾经的一道面试题:

    1.双向链表如何循环,如何插入一条数据?

    2.一个字符串如何用最简单的方法查出重复的字母? 
    例如:String str = “agdbadbjja”

    最优时间复杂度:

    private static void test() {
            String str =  "agdbadbjja";
            Map<Object,Integer> maps = new HashMap<>();
    
            for (int i = 0; i < str.length(); i++) {
                char charAt = str.charAt(i);
                if (maps.get(charAt) != null) {
                    Integer integer = maps.get(charAt);
                    maps.put(charAt, ++integer);
                }else{
                    maps.put(charAt, 1);
                }
            }
    
            Set<Object> keySet = maps.keySet();
            for (Object string : keySet) {
                Integer integer = maps.get(string);
                System.out.println("key:  " + string + "        " + "value:  " + integer);
            }
        }
    打印结果:
    key:  a        value:  3
    key:  b        value:  2
    key:  d        value:  2
    key:  g        value:  1
    key:  j        value:  2

    去重:

    /**
         * 去重
         */
        private static void demo(){
            String str =  "agdbadbjja";
            StringBuffer strb = new StringBuffer();
            List  lists = new ArrayList<>();
            for (int i = 0; i < str.length(); i++) {
                if (!lists.contains(str.charAt(i))) {
                    lists.add(str.charAt(i));
                    strb.append(str.charAt(i));
                }
            }
            System.out.println(strb.toString());
        }
  • 相关阅读:
    第七次——例行报告
    贪吃蛇功能说明书(初稿)
    第六周——例行报告
    第五周——例行报告
    贪吃蛇界面设计初稿
    贪吃蛇需求分析
    软件工程第三次作业
    软件工程第二次作业
    软件工程第一次作业
    Python基础综合练习修改
  • 原文地址:https://www.cnblogs.com/cxxjohnson/p/9088300.html
Copyright © 2011-2022 走看看