劍指offer 二維陣列中的查詢

2021-08-16 17:44:39 字數 664 閱讀 9892

最近找工作時發現自己的程式設計基礎不夠紮實,所以打算將自己的程式設計中遇到的錯誤放到部落格上面,方便以後自己查閱之前犯過的錯誤,這也是我的第一篇部落格哈哈哈。

在乙個二維陣列中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。

陣列自上而下遞增,自左到右遞增,第乙個最簡單的想法肯定是遍歷陣列,但是這樣的效率太低,更優的辦法肯定是利用其中的順序進行查詢。從右下角可以向上和向左查詢的話,元素都是變小,兩個方向都是變小的話就無法提公升效率了,因為誰更小需要進一步地進行判斷,左上角也是同理的。當選左下角的時候,向上則是變小,向右則是變大,這樣一來就可以區分了,右上角也是同理可選的。

下面是我的實現過程:

class solution 

int raw=array[0].size()-1;

int column=0;

while(raw>=0 && column<=(array.size()-1))

else if(target>array[column][raw])

else

}return false;

}};

ps:自己在實現的過程中,犯了乙個小失誤,就是raw和column兩者在陣列下標那裡調轉了,emm還是挺傻的

劍指offer 二維陣列中查詢

在乙個二維陣列中 每個一維陣列的長度相同 每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和一 個整數,判斷陣列中是否含有該整數。public class solution 因為陣列每一行都按照從左到右遞增的順序排序,每一列都按照從上到下...

劍指offer 二維陣列中查詢

從今天開始每天一題,除了節假日。在乙個二維陣列中 每個一維陣列的長度相同 每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。class solution return false class solut...

劍指offer 二維陣列中查詢

要求如下 在乙個二維陣列中 每個一維陣列的長度相同 每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數 示例如下 7,1,2,8,9 2,4,9,12 4,7,10,13 6,8,11,15 思路有三種,...