題目要求:在一個(gè)有序的數(shù)組中,找到一個(gè)目標(biāo)值,返回該值得下標(biāo)。若沒(méi)有找到該值,則返回該值順序插入的下標(biāo)
例如,
[1,3,5,6], 5 → 2
[1,3,5,6], 2 → 1
[1,3,5,6], 7 → 4
[1,3,5,6], 0 → 0
public int searchInsert(int[] nums, int target) { int index=0; for( ; index=target){ break; } } return index; }
使用雙指針后效率比單指針效率高
public int searchInsert2(int[] nums, int target) { int pointerLeft = 0; int pointerRight = nums.length-1; for( ; pointerLeft<=pointerRight ; pointerLeft++, pointerRight--){ if(nums[pointerLeft]>=target){ return pointerLeft; } if(nums[pointerRight]使用二分法也可以,但是二分法可能會(huì)在數(shù)組有重復(fù)數(shù)字情況下產(chǎn)生多個(gè)答案
public int searchInsert3(int[] nums, int target) { int pointerLeft = 0; int pointerRight = nums.length-1; while(pointerLeft<=pointerRight){ int mid = (pointerLeft+pointerRight)/2; if(nums[mid]==target){ return mid; }else if(nums[mid]>target){ pointerRight = mid-1; }else{ pointerLeft = mid+1; } } return pointerLeft; }
想要了解更多開(kāi)發(fā)技術(shù),面試教程以及互聯(lián)網(wǎng)公司內(nèi)推,歡迎關(guān)注我的微信公眾號(hào)!將會(huì)不定期的發(fā)放福利哦~
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/66876.html
Leetcode[35] Search Insert Position Given a sorted array and a target value, return the index if thetarget is found. If not, return the index where it would be if it wereinserted in order.You may assu...
摘要:如果目標(biāo)值不存在于數(shù)組中,返回它將會(huì)被按順序插入的位置。因此需要關(guān)注這些測(cè)試用例,在單機(jī)上逐個(gè)測(cè)試成功后再提交。因?yàn)轭}目中只要求返回索引,并不要求插到數(shù)組中,所以應(yīng)該說(shuō)又簡(jiǎn)化了一些,是一道簡(jiǎn)單題目。爭(zhēng)取在下一篇給出優(yōu)化解法。 「 Leetcode刷題 」系列,僅為刷題過(guò)程中對(duì)于算法和編程的思考與記錄,如果對(duì)你有幫助歡迎點(diǎn)贊收藏。博主也在探索刷題過(guò)程中,記錄的一些知識(shí)點(diǎn)可能很小白,因此主...
摘要:二分搜索法復(fù)雜度時(shí)間空間思路這是最典型的二分搜索法了。這題中,我們返回就行了,如果返回,要注意的情況。代碼條件是找到了在左邊在右邊 Search Insert Position Given a sorted array and a target value, return the index if the target is found. If not, return the inde...
Problem Given a sorted array and a target value, return the index if the target is found. If not, return the index where it would be if it were inserted in order. You may assume NO duplicates in the a...
摘要:自己沒(méi)事刷的一些的題目,若有更好的解法,希望能夠一起探討項(xiàng)目地址 自己沒(méi)事刷的一些LeetCode的題目,若有更好的解法,希望能夠一起探討 Number Problem Solution Difficulty 204 Count Primes JavaScript Easy 202 Happy Number JavaScript Easy 190 Reverse Bi...
閱讀 1682·2019-08-30 15:54
閱讀 3332·2019-08-26 17:15
閱讀 3522·2019-08-26 13:49
閱讀 2582·2019-08-26 13:38
閱讀 2291·2019-08-26 12:08
閱讀 3035·2019-08-26 10:41
閱讀 1368·2019-08-26 10:24
閱讀 3376·2019-08-23 18:35