1. 程式設計問題:
考慮以下巢狀列表:[[1]、1、2]、4、5、5、1、1]、5、6、7、8、9]。
在這種情況下,巢狀列表的長度各不相同,我們觀察到給定的巢狀列表中缺少長度為 3 的列表。
編寫乙個程式來查詢巢狀列表中缺失列表的長度。 假設只有乙個缺失的列表。
使用列表的引數列表定義缺少的 list() 的函式長度。
在函式中,從列表列表中返回缺失列表的長度。
如果沒有缺少的列表,則不返回任何列表。 示例輸入。
示例輸出。 說明:在測試輸入中,最長列表的長度為 4,最短列表的長度為 0。 有長度為 2 和 3 的列表,但缺少長度為 1 的列表。 所以輸出是 1。
注意:輸入保證只有乙個缺失的列表。
2. 實施:
可編輯 ** 如下:
#!/usr/bin/python3.9
# -*coding: utf-8 -*
## copyright (c) 2024 , inc. all rights reserved
## @time : 2024/2/9 9:15
# @author : fangel
# @filename : 104.查詢缺失列表的長度。 py
# @software : pycharm
def length_of_missing_list(list_of_lists):
numlist =
第 1 步:迴圈列表中的列表,並將子列表的長度放入列表 numlist 中。
for listtmp in list_of_lists:
numlist.append(len(listtmp))
第 2 步:根據 numlist 列表排序。
numlist.sort()
第 3 步:在排序列表中查詢缺失列表的長度(標題要求只缺少乙個列表)。
for i in range(0,len(numlist)-1):
if numlist[i+1] -numlist[i] >1:
return numlist[i]+1
第 4 步:如果未缺少任何列表,則返回 none
return none
從使用者輸入中獲取列表列表
list_of_lists = eval(input())
呼叫函式。
print(length_of_missing_list(list_of_lists))
三、分析:
在這個例子中,你可以將列表中子列表的長度新增到 listtmp 中,然後對 listtmp 進行排序,最後檢查是否有任何缺失值。
4. 執行結果:輸入:
輸出:無 輸入:
輸出: