溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java中如何使用二維數組實現查找功能?

發布時間:2020-06-23 17:43:55 來源:億速云 閱讀:211 作者:清晨 欄目:編程語言

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

題目描述:

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

題目分析:

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

代碼:

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

感謝你能夠認真閱讀完這篇文章,希望小編分享Java中如何使用二維數組實現查找功能?內容對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,遇到問題就找億速云,詳細的解決方法等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女