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

2021-10-02 03:29:42 字數 827 閱讀 1526

首先看看什麼是二維陣列:下面的陣列就是乙個int[3][5]的陣列。

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

上**:

public

static

boolean

find

(int target,

int[

] array)}}

return

false;}

public

static

boolean

find2

(int target,

int[

] array)}}

return

false;}

public

static

boolean

find3

(int target,

int[

] array)

else

if(target >array[i]

[mid]

)else}}

return

false;}

後面去看了牛客網的網友們分享的,其中有乙個也是在裡面每列加上乙個折半查詢,然後還提供了一種思路。自己看了想了下,確實更好,但是不是自己的想法,因此就放傳送門吧:牛客網

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

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

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

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

劍指offer01 二維陣列中的查詢

題目描述 在乙個二維陣列中 每個一維陣列的長度相同 每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。解題思路 因為矩陣中的每乙個數,左邊都比它小,下邊都比它大。因此,從右上角開始查詢,就可以根據 ta...