面試題 08 03 魔術索引

2021-10-08 17:42:33 字數 571 閱讀 8317

魔術索引。 在陣列a[0...n-1]中,有所謂的魔術索引,滿足條件a[i] = i。給定乙個有序整數陣列,編寫一種方法找出魔術索引,若有的話,在陣列a中找出乙個魔術索引,如果沒有,則返回-1。若有多個魔術索引,返回索引值最小的乙個。

示例1:

輸入:nums = [0, 2, 3, 4, 5]

輸出:0

說明: 0下標的元素為0

示例2:

輸入:nums = [1, 1, 1]

輸出:1

所謂的魔術索引就是a[i]=i;直接遍歷給定的陣列,如果有魔術索引直接返回,如果沒有直接返回-1;

class solution:

def findmagicindex(self, nums: list[int]) -> int:

if not nums:

return 0

for i in range(len(nums)):

if nums[i]==i:

return i

return -1

面試題 08 03 魔術索引

難度 簡單 題目描述 解題思路 如果不想複雜的話就很簡單嘛 看起來也不太像是二分的樣子啊 public intfindmagicindex int nums public intfindhelper int nums,int left,int right int mid left right lef...

面試題 08 03 魔術索引

魔術索引。在陣列a 0.n 1 中,有所謂的魔術索引,滿足條件a i i。給定乙個有序整數陣列,編寫一種方法找出魔術索引,若有的話,在陣列a中找出乙個魔術索引,如果沒有,則返回 1。若有多個魔術索引,返回索引值最小的乙個。示例1 輸入 nums 0,2,3,4,5 輸出 0說明 0下標的元素為0 示...

力扣刷題筆記 面試題 08 03 魔術索引 C

7 月 31 日簽到題,題目如下 魔術索引。在陣列a 0.n 1 中,有所謂的魔術索引,滿足條件a i i。給定乙個有序整數陣列,編寫一種方法找出魔術索引,若有的話,在陣列a中找出乙個魔術索引,如果沒有,則返回 1。若有多個魔術索引,返回索引值最小的乙個。示例1 輸入 nums 0,2,3,4,5 ...