leetcodeブラシのタイトル・ノート(のpython3) - 。153回転したソート配列の最小を探します

153回転したソート配列の最小を探します

配列は、事前にあなたにいくつかのピボット不明で回転させ、昇順にソートしたとします。

(すなわち、[0,1,2,4,5,6,7]は[4,5,6,7,0,1,2]になるかもしれません)。

最小の要素を検索します。

あなたは重複が配列に存在しないと仮定して。

例1:

入力:[3,4,5,1,2]
出力:1
例2:

入力:[4,5,6,7,0,1,2]
出力:0

func findMin(nums []int) int {
	lg := len(nums)
	l := 0
	r := lg - 1
	if l+1 > r {
		return min(nums[l], nums[r])
	}
	for l < r {
		mid := (l + r) / 2
		if nums[r] > nums[mid] {
			r = mid
		} else {
			l = mid + 1
		}
	}
	return nums[l]
}

func min(i int, j int) int {
	if i < j {
		return i
	} else {
		return j
	}
}
公開された98元の記事 ウォンの賞賛0 ビュー1445

おすすめ

転載: blog.csdn.net/weixin_44555304/article/details/104433368