![](/img/trans.png)
[英]Python: how to copy between lists using lists, e.g. list1[index1] = list2[index2]
[英]What is the complexity of index for lists of lists(e.g. list[x][y])
在python中
lst = [[1,2,3...],[4,5,6...]]
假設我有一個長度為n
的列表,每個嵌套列表的長度都相同。 所以我想用lst[x][y]
查找一些元素。 它的復雜性是什么? 我試圖用谷歌搜索,但沒有找到答案。
編輯:謝謝大家! 因此,如果我輸入一個包含n個列表的列表(每個列表包含n個元素),那么該索引列表多少次(以n表示)? 是2n嗎?
Python數據結構的時間復雜性在此處記錄:
https://wiki.python.org/moin/TimeComplexity
您要詢問的是“獲取項目” list
,它是O(1) 。 即使您為列表和嵌套列表建立索引,它仍然是O(1) 。
索引是O(1)操作(恆定時間)。 因此,兩個連續的索引操作仍為O(1) 。
此頁面顯示“獲取項目”為O(1)
。 要分析像l[x][y]
這樣的表達式,將其分解成各個部分可能會有所幫助:
temp = l[x]
temp[y]
在分析順序操作時,我們增加了時間復雜度。 所以這是O(1) + O(1)
。 但這簡化為O(1)
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.