1. 程式人生 > >【劍指offer】第一題 二維陣列的查詢

【劍指offer】第一題 二維陣列的查詢

平臺


牛客網

語言 


python2.7.3

 

作業內容

 題目描述


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

 題目理解

 什麼是二維陣列


python裡面沒有陣列的概念,而是列表(List),即二維列表相當於二維陣列 。
python裡面的二維陣列,主要有list和numpy.array兩種。其實還有matrices(必須是2維的),
numpy arrays (ndarrays) 可以是多維的。

list和numpy.array的區別


 解題思路


此題是判斷陣列中是否存在某個元素
可以用target in array[j]
對這個二維數組裡面的每個一維陣列遍歷,判斷是否存該元素

 程式

  # -*- coding:utf-8 -*-
    class Solution:
        def Find(self, target, array):
            # write code here
            rows = len(array) - 1  # 二維數組裡的一維陣列的個數
            i = rows
            j = 0
            while j <= i:
                result = target in array[j] #判斷是否存該元素
                j += 1
                if result == True:   # 存在則返回  不存在則繼續迴圈 最終返回False
                    return True
            return False


 

 補充知識點

python中的陣列