JAVA語言之有序矩陣查詢

2021-07-11 16:52:08 字數 671 閱讀 9539

現在有乙個行和列都排好序的矩陣,請設計乙個高效演算法,快速查詢矩陣中是否含有值x。

給定乙個int矩陣mat,同時給定矩陣大小nxm及待查詢的數x,請返回乙個bool值,代表矩陣中是否存在x。所有矩陣中數字及x均為int範圍內整數。保證n和m均小於等於1000。

測試樣例:

[[1,2,3],[4,5,6],[7,8,9]],3,3,10

返回:false

思路:將比較的數值先和每一行的最後乙個元素進行比較.1.如果該行最後乙個元素大於比較的元素,則在這一行左邊依次比較。

2.如果該行最後乙個元素小於比較的元素,則將下一行的最後乙個元素與比較的元素進行比對,然後重複第乙個步驟。

3.如果在比對的過程中相等的話則返回true,否則返回false.

**如下:

package com.paixu;

public class youxujuzhen ,,};

system.out.println(youxujuzhen.findx(mat, 3, 3,10));

}

public static boolean findx(int mat, int n, int m, int x) else if(x

C語言之有符號與無符號

1.計算機中的符號位 資料型別的最高位用於標識資料的符號 最高位為1,表明這個數為負數 最高位為0,表明這個數為整數 1.1相關測試 include int main 實驗結果 2.有符號數的表示法 在計算機內部用補碼表示有符號數 正數的補碼為正數本身 負數的補碼為負數的絕對值各位取反後加1 3.無...

Java語言之迴圈

迴圈 1 while語句是乙個迴圈語句,它會首先判斷乙個條件是否滿足,如果條件滿足,則執行後面緊跟著的語句或語句括號,然後再次判斷條件是否滿足,如果條件滿足則再次執行,直到條件不滿足為止。後面緊跟的語句或語句括號,就是迴圈體。while 條件 2 do while迴圈和 while 迴圈很像,唯一的...

JAVA語言之選擇排序

選擇排序 將第乙個數的下表標記好為min,然後在內迴圈裡面一次和當前下標的下乙個進行大小的比較,然後將小的那個數下標給與min,然後進行迴圈,最後將min標記的值和第乙個數進行交換 package com.paixu public class xuanze int n 5 selectionsort...