26.洗掉排序陣列中的重復項 1.兩數之和
26. 洗掉排序陣列中的重復項

思路:
1.一個下標用來寫資料,另一個下標用來遍歷(i,j)
2.如果nums[i] < muns[j] 說明現在的 j 就是我們現在要找的數字,但是i還是在上一個位置,所以我們需要先讓 i + 1,然后將 j 下標的數字賦值給 i 下標,并且記錄有效數字count + 1
3.如果nums[i] = muns[j],就讓 j + 1
4.回傳 count + 1,


菜就完了,,,,
1. 兩數之和

看到題以后,哇,好簡單,不就兩個回圈查找嘛,有手就行,

,,,,,,,原因是倒數第二個測驗用例


當場裂開,,,,雖然演算法沒有問題,但是非常糟糕,開始尋找大神的解答,
大多數是使用字典模仿hash查找,這樣可以減少查找第二個的下標索引!!!
思路:
1.一邊回圈往字典填充一邊判斷第二個下標是否存在
2.非常巧妙的是,先判斷后往字典填充,為什么吶?原因是避免會出現同一個數字使用兩遍的情況,先判斷時,還沒有將當前值填充字符,避免了判斷之后又是自己的情況


so 以后遇到查找數字或者其他東西時,使用字典也是一種不錯的方法,
學到了,NB,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/26897.html
標籤:其他
