zoukankan      html  css  js  c++  java
  • Java中两个List对比的算法

    Java中两个List对比的算法:

     
                    // 测试数据
                    // tdcsDdt.add("Z");
                    // tdcsDdt.add("B");
                    // tdcsDdt.add("C");
                    // tdmsDdt.add("D");
                    // tdmsDdt.add("A");
                    // tdmsDdt.add("F");
                    // java中排序与SQL中排序不一致,需要按照java中的方式重排一下;
                    Collections.sort(tdcsDdt);
                    Collections.sort(tdmsDdt);
                    String sep = "========";
                    String blank = "       ";
                    System.out.println("==TDCS==" + ljpym + "==TDMS==");
                    // 记录TDMS所在位置
                    int kMark = 0;
                    for (int j = 0, sizej = tdcsDdt.size(); j < sizej; j++) {
                        String tdcsDdtStr = tdcsDdt.get(j);
                        // 记录是否进入了循环,防止kMark==tdmsDdt.size()的时候多输出一行;
                        boolean isInxunhuan = false;
                        for (int k = kMark, sizek = tdmsDdt.size(); k < sizek; k++) {
                            isInxunhuan = true;
                            String tdmsDdtStr = tdmsDdt.get(k);
                            if (tdmsDdtStr.compareTo(tdcsDdtStr) < 0) {
                                System.out.println(blank + sep + tdmsDdtStr);
                                kMark++;
                            }
                            if (tdmsDdtStr.compareTo(tdcsDdtStr) == 0) {
                                System.out.println(tdcsDdtStr + sep + tdmsDdtStr);
                                kMark++;
                                break;
                            }
                            if (tdmsDdtStr.compareTo(tdcsDdtStr) > 0) {
                                System.out.println(tdcsDdtStr + sep + blank);
                                break;
                            }
                        }
                        // 如果tdmsDdt循环完毕,需要把tdcsDdt的继续输出
                        if (kMark - tdmsDdt.size() == 0 && !isInxunhuan) {
                            System.out.println(tdcsDdtStr + sep + blank);
                        }
                    }
                    for (int k = kMark, sizek = tdmsDdt.size(); k < sizek; k++) {
                        String tdmsDdtStr = tdmsDdt.get(k);
                        System.out.println(blank + sep + tdmsDdtStr);
                    }
  • 相关阅读:
    机器学习笔记
    使用pelican创建静态博客
    farbox editor是个好东西
    MamBa项目的插件编写-TikiTorch生成器
    通过rundll32运行C#DLL转储内存
    通过调用Windows本地RPC服务器bypass UAC
    浅谈python反序列化漏洞
    [转载]SQL Server提权系列
    certutil在传输payload中的新奇技巧
    AVIator -- Bypass AV tool
  • 原文地址:https://www.cnblogs.com/stono/p/5087785.html
Copyright © 2011-2022 走看看