您好,登錄后才能下訂單哦!
本文小編為大家詳細介紹“python怎么旋轉數組的最小數字”,內容詳細,步驟清晰,細節處理妥當,希望這篇“python怎么旋轉數組的最小數字”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。
把一個數組最開始的若干個元素搬到數組的末尾,我們稱之為數組的旋轉。 輸入一個非遞減排序的數組的一個旋轉,輸出旋轉數組的最小元素。 例如數組[3,4,5,1,2]為[1,2,3,4,5]的一個旋轉,該數組的最小值為1。 NOTE:給出的所有元素都大于0,若數組大小為0,請返回0。
二分法
# -*- coding:utf-8 -*- class Solution: def minNumberInRotateArray(self, rotateArray): start = 0 end = len(rotateArray)-1 mid = end//2 if end==0: return 0 while 1: if rotateArray[start] > rotateArray[mid]: end = mid mid = (start+mid)//2 elif rotateArray[end] < rotateArray[mid]: start = mid mid = (mid+end)//2 if rotateArray[mid] == rotateArray[start] or rotateArray[mid] == rotateArray[end]: break return rotateArray[mid+1]
讀到這里,這篇“python怎么旋轉數組的最小數字”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。