1、附上题目链接
189. 旋转数组
33. 搜索旋转排序数组
153. 寻找旋转排序数组中的最小值
154. 寻找旋转排序数组中的最小值 II
2、代码关键点详解
2.1 关键点:旋转数组
2.1.1 旋转数组
class Solution {
public void rotate(int[] nums, int k) {
/* 翻转:时间复杂度:O(n)、空间复杂度:O(1) 推荐 */
int n = nums.length;
k = k % nums.length;
reverse(nums, 0, n - 1);
reverse(nums, 0, k - 1);
reverse(nums, k, n - 1);
}
public void reverse (int[] nums, int start, int end) {
while (start < end) {
int temp = nums[start];
nums[start++] = nums