牛客網刷題 劍指OFFER 001 二維陣列查詢

2021-08-21 22:04:20 字數 495 閱讀 7562

乙個二維陣列,每一行從左到右都是遞增,每一列從上到下也是遞增,完成乙個函式,找出該二維陣列中是否包含某個指定的數。

1)輸入 : 二維陣列   array 某個整型數  target

2)輸出:true -有  false-沒有

3)演算法:因為該二維陣列遵循一定的規律,可以從「極端」資料入手,比如右上角和左下角這兩個數。

右上角數的特點,本行最大卻本列最小,若要查詢的數target比它大,那麼肯定他們不是在同一行的,這一行就可以剔除。

反之,則他們肯定不是同一列的,這一例就可以剔除,縮小了查詢範圍。

同理,左下角的數本行最小卻本列最大,若target比它小,則不在同一行,反之則不在同一列

這樣每次查詢都可以剔除掉一行或者一列,降低了複雜度。

class solution 

return false; }

};

牛客刷題 劍指offer(1)

題目描述 在乙個二維陣列中 每個一維陣列的長度相同 每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。思路 1.找對角線,這樣做比較複雜,因為不一定是方陣。爛思路。2.右上角,如果target大於右上角...

牛客網 劍指Offer(66題)

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

牛客網 劍指Offer 索引

二維陣列中的查詢 替換空格 從尾到頭列印鍊錶 重建二叉樹 用兩個棧實現佇列 旋轉陣列的最小數字 斐波那契數列 跳台階 跳台階 矩形覆蓋 二進位制中1的個數 數值的整數次方 調整陣列順序使奇數字於偶數前面 鍊錶中倒數第k個結點 反轉鍊錶 合併兩個排序的鍊錶 樹的子結構 二叉樹的映象 順時針列印矩陣 包...