--- 数组相关 --- [04. 二维数组中的查找](https://leetcode-cn.com/problems/er-wei-shu-zu-zhong-de-cha-zhao-lcof/) ```java class Solution { public boolean findNumberIn2DArray(int[][] matrix, int target) { if (matrix == null || matrix.length == 0) { return false; } int m = matrix.length, n = matrix[0].length; int row = 0, col = n - 1; while (row < m && col >= 0) { if (matrix[row][col] > target) { col--; } else if (matrix[row][col] < target) { row++; } else { return true; } } return false; } } ``` [11. 旋转数组的最小数字](https://leetcode-cn.com/problems/xuan-zhuan-shu-zu-de-zui-xiao-shu-zi-lcof/) ```java class Solution { public int minArray(int[] numbers) { int i = 0, j = numbers.length - 1; while (i < j) { int m = (i + j) / 2; if (numbers[m] > numbers[j]) { i = m + 1; } else if (numbers[m] < numbers[j]) { j = m; } else { j--; } } return numbers[i]; } } ``` [21. 调整数组顺序使奇数位于偶数前面](https://leetcode-cn.com/problems/diao-zheng-shu-zu-shun-xu-shi-qi-shu-wei-yu-ou-shu-qian-mian-lcof/) ```java class Solution { public int[] exchange(int[] nums) { int i = 0, j = nums.length - 1; while (i < j) { if (nums[i] % 2 == 1 && nums[j] % 2 == 0) { i++; j--; } else if (nums[i] % 2 == 1 && nums[j] % 2 == 1) { i++; } else if (nums[i] % 2 == 0 && nums[j] % 2 == 1) { int temp = nums[i]; nums[i++] = nums[j]; nums[j--] = temp; } else { j--; } } return nums; } } ``` ```java class Solution { public int[] exchange(int[] nums) { int i = 0, j = nums.length - 1, temp; while (i < j) { while (i < j && (nums[i] & 1) == 1) { i++; } while (i < j && (nums[j] & 1) == 0) { j--; } temp = nums[i]; nums[i] = nums[j]; nums[j] = temp; } return nums; } } ```