亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

返回列表中的最低點

返回列表中的最低點

鴻蒙傳說 2021-08-14 17:07:39
def find_local_sink(m: List[List[int]], start: List[int]) -> List[int]:    """    Examples     >>> m = [[ 5,70,71,80],             [50, 4,30,90],             [60, 3,35,95],             [10,72, 2, 1]]    >>> find_local_sink(m, [0,0])    [3,3]    >>> m = [[ 5,70,71,80],             [50, 4, 5,90],             [60, 3,35, 2],             [ 1,72, 6, 3]]    >>> find_local_sink(m, [0,3])    [2,3]    >>> m = [[9,2,3],             [6,1,7],             [5,4,8]]    >>> find_local_sink(m, [1,1])    [1,1]    """    lowest_point = m[0][0]    for i in range(len(m)):        for j in range(len(m)):            if m[i][j] < lowest_point:                lowest_point = m[i][j]                print(lowest_point)    return find_local_sink給出一個列表或點。我想返回下一個最低點。我試圖弄清楚如何做到這一點。許多文檔字符串是測試用例,以顯示所需的意圖。問題是它不返回下一個最小的項目,而是返回整體最小的項目。所有它不返回索引,而只返回值
查看完整描述

1 回答

?
婷婷同學_

TA貢獻1844條經驗 獲得超8個贊

您的代碼不使用該start參數,這就是它打印總體最小值的原因。更改for-loops 中的范圍以使用start的元素作為起始值。此外,lowest_point如果您需要該值,該函數應該返回;如果您需要索引使用額外的變量來跟蹤它們:


def find_local_sink(m, start):

    lowest_point = m[start[0]][start[1]]

    lowest_index = [[start[0], start[1]]

    for i in range(start[0], len(m)):

        for j in range(start[1], len(m)):

            if m[i][j] < lowest_point:

                lowest_point = m[i][j]

                lowest_index = [i, j]

    return lowest_index # or: return lowest_point


查看完整回答
反對 回復 2021-08-14
  • 1 回答
  • 0 關注
  • 141 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號