如何按順序添加鏈表串列的元素?例如,我有鏈表串列:[[1, 2, 3], [4, 5, 6], [7, 8]]和串列,我想按順序而不是按順序new_list添加所有元素。對于第二種情況,我有代碼:1->2->3->...->7->81->4->7->2->5->3->6->8
new_list = []
for array in lists:
while array:
new_list.append(array.val)
array = array.next
但是如何修改它以獲得第一種情況下的訂單?
uj5u.com熱心網友回復:
好的,這就是我所做的:
lists = [[1,2,3],[4,5,6],[7,8]]
new_list = []
for array in lists:
for i in array:
new_list.append(i)
print(new_list)
Output: [1,2,3,4,5,6,7,8]
我不知道您為什么使用array.next 或array.val,但是我認為您可以簡單地獲取串列并迭代它的值,然后毫無問題地附加它。
uj5u.com熱心網友回復:
如果您只想連接串列,請使用itertools.chain.
在此處查看官方檔案。
>>> import itertools
>>> data = [[1, 2, 3], [4, 5, 6], [7], [8, 9]]
>>> list(itertools.chain(*data))
[1, 2, 3, 4, 5, 6, 7, 8, 9]
>>>
uj5u.com熱心網友回復:
我的想法是,我使用 pop 來獲取值然后對陣列進行排序,你可以試試我的想法:
lists = [[1, 2, 3], [4, 5, 6], [7, 8]]
new_list = []
for array in lists:
while array:
new_list.append(array.pop())
new_list.sort()
所以你會得到你想要的結果: [1, 2, 3, 4, 5, 6, 7, 8]
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/443789.html
標籤:Python python-3.x 算法 功能 链表
下一篇:模運算-證明或反駁計算
