public int[] getIntersection_usingBinarySearch(int[] a, int[] b) {
		BinarySearch bs = new BinarySearch();

		int smallL;
		int[] smallR, largeR;

		if (a.length > b.length) {
			smallL = b.length;
			smallR = b;
			largeR = a;
		} else {
			smallL = a.length;
			smallR = a;
			largeR = b;
		}

		int[] c = new int[smallL];
		int searchI;
		int iC = 0;
		for (int i = 0; i < smallL; i++) {
			searchI = bs.binarySearch(largeR, smallR[i]);
			if (searchI != -1) {// found,intersected
				c[iC] = largeR[searchI];
				iC++;
			}
		}
		return c;

	}