劍指Offer01之二維陣列中查詢目標數

2022-09-11 16:27:22 字數 652 閱讀 6773

​ 在乙個二維陣列中(每個一維陣列的長度相等),每一行都是從左到右遞增的順序排序,每一列都是從上到下遞增的順序排序,輸入這樣乙個二維陣列和乙個整數,判斷該整數是否在二維陣列中。

// 暴力查詢法,通過遍歷整個二維陣列進行判斷

public static boolean violence(int arr,int target)

}return false;

}/**

* tips: 二維陣列其實就是元素型別為陣列的一維陣列。 ex: ,,}

* 可理解為: 1,2,3

* 2,3,4

* 3,4,5

* 此時我們可以將target 和每一行的最後乙個元素作比較,有三種情況發生

* 1. 相等 則直接返回true 即二維陣列中存在該元素

* 2. 最後乙個元素 > target 則target不可能存在當前行中,直接跳轉到下一行

* 3. 最後乙個元素 < target 則每個一維陣列的最後一行都不用比較了**/

public static boolean find(int array,int target)

return false;

}

劍指offer 01二維陣列中的查詢

二叉排序樹的定義 二叉排序樹,又稱為二叉查詢樹。它或者是一顆空樹,或者具有下列性質的二叉樹。若它的左子樹不空,則左子樹上所有節點的值均小於它的根節點的值 若它的右子樹不空,則右子樹上所有節點的值均大於它的根節點的值 它的左 右子樹也分別為二叉排序樹。這種樹模式下的搜尋途徑可以遍歷或預判所有可能性 比...

劍指Offer(01) 二維陣列中的查詢

在乙個二維陣列中 每個一維陣列的長度相同 每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。選取陣列中右上角的數。分三種情況 1 如果該數等於要查詢的數,查詢過程結束 2 如果該數大於要查詢的數,則往左...

劍指Offer 01 二維陣列中的查詢

首先看看什麼是二維陣列 下面的陣列就是乙個int 3 5 的陣列。我一看到,就想的是直接遍歷比較。果然還是太菜了啊。然後又想到昨天面試時,位元組跳動的面試官小姐姐說的 你多想想其他的情況。好吧我想了一下,遞增序列,折半查詢。嗯,加上後牛客的測試時間更加長了,我懵了。沒道理啊,乙個時間複雜度是n n,...