`

两有序数组求交集

 
阅读更多
package com.myway.study;

import java.util.ArrayList;
import java.util.List;

/**
 * 两个有序数组 求交集
 * User: zhangyong
 * Date: 14-5-1
 * Time: 上午12:05
 * To change this template use File | Settings | File Templates.
 */
public class TwoArraySameElements {

    public static List<Integer> getSameElements(int[] arr1, int[] arr2) {
        List<Integer> sameElements = new ArrayList<Integer>();
        int i = 0;
        int j = 0;
        while (i < arr1.length && j < arr2.length) {
            if (arr1[i] == arr2[j]) {
                System.out.println("重复数字:" + arr1[i]);
                sameElements.add(arr1[i]);
                i++;
                j++;
            } else if (arr1[i] > arr2[j]) {
                j++;
            } else {
                i++;
            }
        }
        return sameElements;
    }

    public static void main(String[] args) {
        int[] arr1 = {1, 3, 5, 8};
        int[] arr2 = {2, 3, 5, 9, 11};
        System.out.println(TwoArraySameElements.getSameElements(arr1, arr2));
    }

}

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics