leetcode 81 搜尋旋轉排序陣列 II

2022-06-16 17:03:13 字數 1474 閱讀 5904

假設按照公升序排序的陣列在預先未知的某個點上進行了旋轉。

( 例如,陣列 [0,0,1,2,2,5,6] 可能變為 [2,5,6,0,0,1,2] )。

編寫乙個函式來判斷給定的目標值是否存在於陣列中。若存在返回 true,否則返回 false。

示例 1:

輸入: nums = [2,5,6,0,0,1,2], target = 0

輸出: true

示例 2:

輸入: nums = [2,5,6,0,0,1,2], target = 3

輸出: false

1

public

class

_81

1516

//找出有序的那部分

17int t = null;18

if (nums[mid] <= nums[high]) else

27int res =arrays.binarysearch(t, target);

28if (res >= 0) return

true;29

30//

判斷無序的左邊是否存在target

31return

search(arrays.copyofrange(nums, nsl, nsr), target);32}

3334

public

static

void

main(string args) ;

36boolean res = new _81().search(nums, 2);

37 system.out.println("res = " +res);38}

39 }

稍微改進下。

1

public

class

_81 else

if (nums[mid] >target) else14}

15return

false;16

}17public

boolean result(int nums, int target, int low, int

high)

2829

if (nums[mid] <= nums[high])

35if (nums[low] <= nums[mid])

41return

false;42

}43public

boolean search(int nums, int

target)

4950

public

static

void

main(string args) ;

52boolean res = new _81().search(nums, 8);

53 system.out.println("res = " +res);54}

55 }

LeetCode81 搜尋旋轉排序陣列 II

二分查詢,但是下面的 在測試用例 3,1 1中出錯。package 牛客刷題.leetcode.查詢.search in rotated sorted array ii created by administrator on 2018 6 28 0028.public class solution ...

LeetCode 81 搜尋旋轉排序陣列 II

假設按照公升序排序的陣列在預先未知的某個點上進行了旋轉。例如,陣列 0,0,1,2,2,5,6 可能變為 2,5,6,0,0,1,2 編寫乙個函式來判斷給定的目標值是否存在於陣列中。若存在返回true,否則返回false。示例 1 輸入 nums 2,5,6,0,0,1,2 target 0輸出 t...

leetcode81 搜尋旋轉排序陣列 II

假設按照公升序排序的陣列在預先未知的某個點上進行了旋轉。例如,陣列 0,0,1,2,2,5,6 可能變為 2,5,6,0,0,1,2 編寫乙個函式來判斷給定的目標值是否存在於陣列中。若存在返回 true,否則返回 false。示例 1 輸入 nums 2,5,6,0,0,1,2 target 0 輸...