LeetCode Python 704 二分查詢

2021-09-11 07:42:41 字數 1201 閱讀 8945

給定乙個n個元素有序的(公升序)整型陣列nums和乙個目標值target,寫乙個函式搜尋nums中的target,如果目標值存在返回下標,否則返回-1

示例 1:

輸入:nums= [-1,0,3,5,9,12],target= 9輸出:4解釋:9 出現在nums中並且下標為 4
示例 2:

輸入:nums= [-1,0,3,5,9,12],target= 2輸出:-1解釋:2 不存在nums中因此返回 -1

你可以假設nums中的所有元素是不重複的。

n將在[1, 10000]之間。

nums的每個元素都將在[-9999, 9999]之間。

思路:二分查詢入門題。

class solution(object):

def search(self, nums, target):

""":type nums: list[int]

:type target: int

:rtype: int

"""left = 0

right = len(nums) - 1

while(left <= right):

mid = (left + right) / 2

if nums[mid] < target:

left = mid + 1

elif nums[mid ] > target:

right = mid - 1

elif nums[mid] == target:

# print nums[left]

return mid

return -1

LeetCode Python 7 翻轉整數

感覺進度慢的很,但是邊學邊做好像剛上來確實有點.不順暢,這個題中間的wa完全是我個人問題 大概最近不適合做題吧.可能應該休息兩天再動手 chorme的自動翻譯讓我做個題都難受 掛 class solution def reverse self,x type x int rtype int if x ...

LeetCode Python 打家劫舍I

你是乙個專業的小偷,計畫偷竊沿街的房屋。每間房內都藏有一定的現金,影響你偷竊的唯一制約因素就是相鄰的房屋裝有相互連通的防盜系統,如果兩間相鄰的房屋在同一晚上被小偷闖入,系統會自動報警。給定乙個代表每個房屋存放金額的非負整數陣列,計算你在不觸動警報裝置的情況下,能夠偷竊到的最高金額。示例 1 輸入 1...

leetcode Python編碼練習

貪心演算法 1.環形路上有n個加油站,第i個加油站的汽油量是gas i 你有一輛車,車的油箱可以無限裝汽油。從加油站i走到下乙個加油站 i 1 花費的油量是cost i 你從乙個加油站出發,剛開始 的時候油箱裡面沒有汽油。求從哪個加油站出發可以在環形路上走一圈。返回加油站的下標,如果沒有答案的話返回...