Update BinarySearchTest.java
parent
6ca0b464a8
commit
4b6f4dc631
|
|
@ -97,18 +97,18 @@ public class BinarySearchTest {
|
|||
int result = Arrays.binarySearch(nums, target);
|
||||
if (result < 0) {
|
||||
int insertIndex = Math.abs(result + 1);
|
||||
System.out.printf("nums: " + Arrays.toString(nums) + "\n");
|
||||
System.out.printf("insertIndex: " + insertIndex + "\n");
|
||||
System.out.println("nums: " + Arrays.toString(nums));
|
||||
System.out.println("insertIndex: " + insertIndex);
|
||||
int[] newNums = new int[nums.length + 1];
|
||||
//第一次拷贝
|
||||
System.arraycopy(nums, 0, newNums, 0, nums.length);
|
||||
System.out.printf("newNums: " + Arrays.toString(newNums) + "\n");
|
||||
System.out.println("newNums: " + Arrays.toString(newNums));
|
||||
newNums[insertIndex] = target;
|
||||
// 第二次拷贝
|
||||
System.arraycopy(nums, insertIndex, newNums, insertIndex + 1, nums.length - insertIndex);
|
||||
System.out.printf("newNums: " + Arrays.toString(newNums) + "\n");
|
||||
System.out.println("newNums: " + Arrays.toString(newNums));
|
||||
}
|
||||
System.out.printf("result: " + result);
|
||||
System.out.println("result: " + result);
|
||||
assertEquals(-3, result, "The target should not be found");
|
||||
}
|
||||
|
||||
|
|
@ -126,4 +126,14 @@ public class BinarySearchTest {
|
|||
assertEquals(2, BinarySearch.binarySearchRightMost(nums, 3));
|
||||
assertEquals(7, BinarySearch.binarySearchRightMost(nums, 5));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testSearchRange() {
|
||||
int[] nums = {5, 7, 7, 8, 8, 10};
|
||||
int[] nums1 = {1};
|
||||
assertArrayEquals(new int[]{1,2}, BinarySearch.searchRange(nums, 7), "The result should be [1, 2]" );
|
||||
assertArrayEquals(new int[]{3,4}, BinarySearch.searchRange(nums, 8), "The result should be [3, 4]" );
|
||||
assertArrayEquals(new int[]{-1, -1}, BinarySearch.searchRange(nums, 6), "The result should be [-1, -1]");
|
||||
assertArrayEquals(new int[]{0, 0}, BinarySearch.searchRange(nums1, 1), "The result should be [0, 0]");
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue