Java——两个顺序链表的并交集

来源:互联网 发布:夸奖男人网络词 编辑:程序博客网 时间:2024/06/14 06:06

求两个顺序链表的交集,假设链表是递增的。

public static LinkedList<Integer> listIntersection(LinkedList<Integer> L1, LinkedList<Integer> L2){        LinkedList<Integer> intersection = new LinkedList<>();        Iterator<Integer> iter1 = L1.iterator();        Iterator<Integer> iter2 = L2.iterator();        int a = iter1.next();        int b = iter2.next();        while(true){            if(a == b){                intersection.add(a);                if(iter1.hasNext() && iter2.hasNext()){                    a = iter1.next();                    b = iter2.next();                }                else    break;            }            else if (a > b) {                if(iter2.hasNext())                    b = iter2.next();                else    break;            }            else {                if(iter1.hasNext())                    a = iter1.next();                else    break;            }        }        return intersection;    }

求两个顺序链表的并集,假设链表是递增的。

public static LinkedList<Integer> listUnion(LinkedList<Integer> L1, LinkedList<Integer> L2){        LinkedList<Integer> union = new LinkedList<>();        Iterator<Integer> iter1 = L1.iterator();        Iterator<Integer> iter2 = L2.iterator();        int a = iter1.next();        int b = iter2.next();        while(true){            if(a == b){                union.add(a);                if(iter1.hasNext() && iter2.hasNext()){                    a = iter1.next();                    b = iter2.next();                }else   break;            }            else if (a > b) {                union.add(b);                if(iter2.hasNext())                    b = iter2.next();                else    break;            }            else {                union.add(a);                if(iter1.hasNext())                    a = iter1.next();                else    break;            }        }        while(iter1.hasNext())  union.add(iter1.next());        while(iter2.hasNext())  union.add(iter2.next());        return union;    }
0 0
原创粉丝点击