二維陣列中的查詢
題目描述:在乙個二維陣列中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。
**:/**
* 在乙個二維陣列中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。
* 請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。
* * 規律:首先選取陣列中右上角的數字。如果該數字等於要查詢的數字,查詢過程結束:
* 如果該數字大於要查詢的數字,剔除這個數字所在的列:如果該數字小於要查詢的數字,剔除這個數字所在的行。
* 也就是說如果要查詢的數字不在陣列的右上角,則每-次都在陣列的查詢範圍中剔除)行或者一列,這樣每一步都可以縮小
* 查詢的範圍,直到找到要查詢的數字,或者查詢範圍為空。
** @param matrix 待查詢的陣列
* @param number 要查詢的數
* @return 查詢結果,true找到,false沒有找到
*/public class solution
int rows = array.length; //二維陣列的行數
int cols = array[0].length; //二維陣列的列數
int row = 0; //起始的行號
int col = cols-1; //起始的列號
while(row >= 0 && row < rows && col >= 0 && col target)else
}return false;
}public static void main(string args),,,
};system.out.println(find(array,3)); //要查詢的數在陣列中
system.out.println(find(array,13)); //要查詢的數不在陣列中} }
劍指offer程式設計
1.二維陣列查詢 在乙個二維陣列中 每個一維陣列的長度相同 每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。思路 二維陣列有序 class solution else if array i j 補充 ...
劍指offer 程式設計題
輸入兩個整數序列,第乙個序列表示棧的壓入順序,請判斷第二個序列是否可能為該棧的彈出順序。假設壓入棧的所有數字均不相等。例如序列1,2,3,4,5是某棧的壓入順序,序列4,5,3,2,1是該壓棧序列對應的乙個彈出序列,但4,3,5,1,2就不可能是該壓棧序列的彈出序列。注意 這兩個序列的長度是相等的 ...
javascript劍指offer程式設計練習 4
題目描述 從上往下列印出二叉樹的每個節點,同層節點從左至右列印。function treenode x function printfromtoptobottom root let queue queue.push root let result while queue.length if node...