亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

二維“有序”數組查找問題的解決

2019-11-15 00:52:13
字體:
來源:轉載
供稿:網友
二維“有序”數組查找問題的解決
題目:在一個二維數組中,每一行都按照從左到右遞增的順序排序,誒一列都按照從上到下遞增的順序排序,請完成一個函數,輸入這樣的一個二維數組和一個整數,判斷數組中是否包含了該整數。
例如下面的二維數組就是每行、沒列都遞增排序。如果在這個數組中查找數字7,則返回true(找得到);如果查找數字5,由于數組不含該數字,則返回false。
1289
24912
471013
681115
如下圖所示,會出現三種情況。
  1. 數組中選取的數字(圖中全黑的位置)剛好是要查找的數字(相等),查找過程結束;
  2. 選取的數字小于要查找的數字,那么根據數組排序的規則,要查找的數字應該在當前位置的右邊或者下邊(如下圖2.1(a)所示)
  3. 選取的數字大于要查找的數字,那么要查找的數字應該在當前選取的位置的上邊或者左邊。

分析: 由上圖可知,當不等于要查找的數字的時候會出現兩片要查找的區域重疊的情況。我們該怎么考慮呢? 我們可以從數組的一個角上選取數字來和要查找的數字做比較,情況會變得簡單一些。如:首先選取數組右上角的數字9。由于9大于7,并且還是第4列的第一個(也是最小的)的數字,因此7不可能出現在數字9所在的列。于是我們把這一列從需要考慮的區域內剔除,之后只需分析剩下的3列(如下圖(a)所示)。在剩下的矩陣中,位于右上角的數字是8,同樣8大于7,因此8所在的列我們也可以剔除。接下來我們只要分析剩下的兩列即可(如下圖(b) 所示)。 在由剩下的兩列組成的數組中,數字2位于數字的右上角。2小于7,那么要查找的7可能在2的右邊,也有可能在2的下邊。在前面的步驟中,我們已經發現2右邊的列都已經被剔除了每頁就是說7不可能出現在2的右邊,因此7只有可能出現在2的下邊。于是我們把數字2所在的行也剔除,值分析剩下的三行兩列數組(如下圖(c)所示)。在剩下的數字中4位于右上角,和前面一樣,我們把數字4所在的行也剔除,最后剩下兩行兩列數字(如圖(d)所示) 在剩下的兩行兩列4個數字中,位于右上角的剛好就是我們要查找的數字7,于是查找過程就可以結束了。
1289
24912
471013
681115
(a)
1289
24912
471013
681115
(b)
1289
24912
471013
681115
(c)
1289
24912
471013
681115
(d)
注:矩陣中加顏色的的區域是下一步查找的范圍。總結 總結上述查找的過程,我們發現如下規律:首先選取數組中右上角的數字。如果該數字等于要查找的數字,查找過程結束;如果該數字大于要查找的數字,剔除這個數字所在;如果該數字小于要查找的數字,剔除這個數字所在的。
編碼實現核心算法:
 /**  *   * @param num 被查找的二維數組  * @param rows 行數  * @param columns 列數  * @param number 要查找的數字  * @return 是否找到要查找的數字(number)  */ public static Boolean Find(int num[][],int rows,int columns,int number) {  Boolean found = false;  int row = 0;  int column = columns - 1 ;    if( rows > 0 && columns >0)  {   while(row < rows && column >= 0)   {    if(num[row][column] == number)  //查找到    {     found = true;     break;    }    else if(num[row][column] >number)    {     --column;  //刪除列    }    else    {     ++row;  //刪除行    }        }  }  return found; }

測試:

public static void main(String[] args) {  //初始化數字的值  int num[][]= {{1,2,8,9},{2,4,9,12},{4,7,10,13},{6,8,11,15}};    System.out.PRintln(Find(num,4,4,7)); //在數組中    System.out.println(Find(num,4,4,5)); //5不在數組中 }

結果:

truefalse


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美日韩国产精品| 成人淫片在线看| 国产日韩av高清| 国产999精品久久久| 九九综合九九综合| 国产精品草莓在线免费观看| 九九热这里只有精品6| 亚洲人成网站色ww在线| 亚洲一区二区三区在线免费观看| 久久久免费观看视频| 欧洲美女7788成人免费视频| 午夜精品一区二区三区在线视频| 欧美精品免费在线观看| 精品在线观看国产| 91久久国产精品91久久性色| 国产欧美日韩精品丝袜高跟鞋| 亚洲va欧美va国产综合久久| 亚洲成人精品视频在线观看| 欧美午夜美女看片| 午夜精品视频在线| 国产97在线|亚洲| 国产一区二区精品丝袜| 日韩电影免费观看中文字幕| 亚洲激情在线观看| 久久影视电视剧免费网站| 亚洲国产日韩欧美在线图片| 一区二区三区 在线观看视| 久久网福利资源网站| 色婷婷综合久久久久中文字幕1| 2021久久精品国产99国产精品| 中文字幕在线成人| 成人a视频在线观看| 亚洲国产小视频在线观看| 色偷偷噜噜噜亚洲男人的天堂| 亚洲欧美色婷婷| 国产精品久久久久久影视| 国产91精品不卡视频| 久久精品国产久精国产一老狼| 久久久久久伊人| 欧美色图在线视频| 精品国产欧美一区二区三区成人| 大胆欧美人体视频| 色与欲影视天天看综合网| 欧美一级在线播放| 欧美影院成年免费版| 欧美日韩在线一区| 国产精品一区二区三区免费视频| 国产成人亚洲综合| 第一福利永久视频精品| 日韩中文视频免费在线观看| 欧美色播在线播放| 国产精品久久久久国产a级| 日本一区二区三区在线播放| 992tv成人免费影院| 亚洲国产成人在线播放| 欧美一区三区三区高中清蜜桃| 欧美激情在线有限公司| 欧美成人午夜剧场免费观看| 午夜精品一区二区三区在线| 亚洲国产精品成人va在线观看| 96sao精品视频在线观看| 97视频在线观看免费| 亚洲福利影片在线| 在线日韩av观看| 久久99热精品| 欧美精品久久久久久久免费观看| 91社影院在线观看| 中文字幕久热精品在线视频| 日韩国产在线看| 亚洲情综合五月天| 日韩国产一区三区| 欧美在线视频a| 国产精品国模在线| 国产精品久久久久久久久免费看| 国产亚洲xxx| 人人做人人澡人人爽欧美| 日韩成人激情在线| 欧美日韩亚洲一区二区三区| 色噜噜狠狠色综合网图区| 国产精品r级在线| 亚洲天堂网站在线观看视频| 久久国产一区二区三区| 亚洲а∨天堂久久精品9966| 色噜噜亚洲精品中文字幕| 日韩欧美亚洲成人| 欧美亚州一区二区三区| 91精品国产自产在线| 欧美孕妇性xx| 国产91露脸中文字幕在线| 国产精欧美一区二区三区| 国产精品午夜视频| 伊人久久精品视频| 欧美中文字幕在线播放| 国产成人一区二区| 日韩在线观看免费全| 欧美日韩国产丝袜另类| 91精品久久久久久久久久| 欧美性色视频在线| 日本成人在线视频网址| 九九热r在线视频精品| 亚洲精品成人久久电影| 亚洲国产中文字幕在线观看| 国产视频精品免费播放| 亚洲综合在线播放| 亚洲精品久久久久久久久久久久久| 欧洲美女7788成人免费视频| 国产一区二区三区在线| 2019国产精品自在线拍国产不卡| 久久免费福利视频| 在线观看日韩www视频免费| 日本一区二区三区在线播放| 国产伊人精品在线| 国内成人精品一区| 日韩电影大片中文字幕| 91精品在线看| 久久国产精品久久久久久| 亚洲国产日韩欧美在线动漫| 欧美日韩亚洲激情| 欧美裸体视频网站| 亚洲成人a**站| 美女啪啪无遮挡免费久久网站| 国产精品电影网| 亚洲人精选亚洲人成在线| 久久精品99久久久香蕉| 日本高清不卡的在线| 91沈先生作品| 欧美成人精品不卡视频在线观看| 国产精品入口免费视频一| 美女久久久久久久| 欧美最猛性xxxx| 色综合久综合久久综合久鬼88| 亚洲精品456在线播放狼人| 亚洲国产天堂久久综合网| 成人黄色av网站| 91a在线视频| www.久久久久久.com| 亚洲аv电影天堂网| 亚洲影院色在线观看免费| 国产精品欧美激情在线播放| 国产免费久久av| 亚洲aaaaaa| 国产精品揄拍500视频| 欧美一区三区三区高中清蜜桃| 日韩av大片免费看| 国产精品亚洲视频在线观看| 亚洲成人av中文字幕| 一区二区三区 在线观看视| 中文字幕亚洲精品| 欧美午夜丰满在线18影院| 777777777亚洲妇女| 精品亚洲va在线va天堂资源站| 永久免费精品影视网站| 国产色综合天天综合网| 欧美华人在线视频| 国产精品久久久久9999| 久久久亚洲成人| 欧美理论电影网| 欧美大片欧美激情性色a∨久久| 懂色av一区二区三区| 日韩美女写真福利在线观看| 日韩中文视频免费在线观看| 中文字幕国产日韩| 欧美黄网免费在线观看| 国产视频观看一区|