Java中如何使用二維數(shù)組實現(xiàn)查找功能?

不懂Java中如何使用二維數(shù)組實現(xiàn)查找功能??其實想解決這個問題也不難,下面讓小編帶著大家一起學習怎么去解決,希望大家閱讀完這篇文章后大所收獲。

成都創(chuàng)新互聯(lián)公司-專業(yè)網站定制、快速模板網站建設、高性價比隆安網站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式隆安網站制作公司更省心,省錢,快速模板網站建設找我們,業(yè)務覆蓋隆安地區(qū)。費用合理售后完善,十多年實體公司更值得信賴。

題目描述:

在一個二維數(shù)組中(每個一維數(shù)組的長度相同),每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成一個函數(shù),輸入這樣的一個二維數(shù)組和一個整數(shù),判斷數(shù)組中是否含有該整數(shù)。

題目分析:

  • 根據(jù)二維數(shù)組的特點可知,二維數(shù)組相當于一個矩陣;
  • 根據(jù)題意可知該數(shù)組是有序的,因此該矩陣元素相當于是從小到大排列的;
  • 如果從左下角開始查找較方便,因為左下角的值向上是遞減的,向右是遞增的;
  • 當從左下角開始比較時,如果target傳入的數(shù)大于它則列數(shù)加一進行比較 ,如果小于它則行數(shù)減一進行比較。
     

代碼:

public class Solution {
  public boolean Find(int target, int [][] array) {
    int rows = array.length;
    //定義行數(shù)
    int lies = array[0].length;
    //定義列數(shù)
    int i = 0;
    //i用于計數(shù)
    while((rows>0)&&(i<lies))
      //while中不滿足條件時即停止循環(huán)
    {
      if(target>array[rows-1][i])
        //當目標大于左下角的值時,讓列數(shù)自增
        {
          i++;
        }
        else if(target<array[rows-1][i])
        //當目標小于左下角的值時,讓行數(shù)自減
        {
          rows--;
        }else
        {
          //當前兩種都不是時,說明找到目標
          return true;
        }
    }
        //遍歷完還沒找到,說明目標在數(shù)組中不存在
        return false;
  }
}

感謝你能夠認真閱讀完這篇文章,希望小編分享Java中如何使用二維數(shù)組實現(xiàn)查找功能?內容對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,遇到問題就找創(chuàng)新互聯(lián),詳細的解決方法等著你來學習!

當前名稱:Java中如何使用二維數(shù)組實現(xiàn)查找功能?
文章轉載:http://muchs.cn/article24/pdgeje.html

成都網站建設公司_創(chuàng)新互聯(lián),為您提供網站策劃、域名注冊、網站設計建站公司、營銷型網站建設定制開發(fā)

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

成都做網站