程式設計題練習

2022-07-27 18:48:13 字數 1173 閱讀 7596

在乙個二維陣列中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。

請寫乙個函式,輸入這樣乙個二維陣列和乙個整數,判斷陣列中是否有該整數。

思路:矩陣是有序的,從左下角來看,向上是遞減的,向右是遞增的。

因此從左下角出發,當目的數字比當前數字大的時候,(右移)就執行向右查詢;當目的數字比當前數字小的時候,就向上繼續查詢(上移)。

1 #

!/usr/bin/env python3

2 #-*- coding: utf-8 -*-

3 4 def

find_num(ary, num):

5 row = len(ary) - 1

6 while row >=0 :

7 for i in

range(len(ary[row])):

8 if num ==ary[row][i]:

9 return

true

10 #

如果目的數字小於當前數字,就跳出當前迴圈,上移一行

11 if num 12 break

13 #

如果目的數字大於當前數字,就執行向右查詢。

14 #

如果右移玩一行都沒有找到的話,就上移。

15 if num >ary[row][i]:

16 continue

17 row -= 1

18 return

false

19 20 if

__name__ == '

__main__':

21 a = [[1,3,5],[2,4,6,8]]

22 print(find_num(a, 5))

程式設計題練習 1

思路 建立兩個字元陣列,乙個按順序存放數字,乙個按順序存放字母,然拼接這兩個陣列。其實用string類會更好,這裡用vector輸入的時候帶空格,不過思想是一樣的 include include using namespace std class solution for int i 0 ifor ...

面試程式設計題練習

在乙個二維陣列中 每個一維陣列的長度相同 每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。解題思路 利用二維陣列由上到下,由左到右遞增的規律,那麼選取右上角或者左下角的元素a row col 與tar...

程式設計題 練習2 14至2 17

本題要求編寫程式,計算序列 1 1 3 1 5 的前n項之和。輸入在一行中給出乙個正整數n。在一行中按照 sum s 的格式輸出部分和的值s,精確到小數點後6位。題目保證計算結果不超過雙精度範圍。23sum 2.549541 include double computeoddsum int n re...