假設在123中有一個鏈接列表,每個整數都有一個點,head是1,next是2,next是3,如何將每個元素乘以一個數字,比方說3,這樣新的鏈表指向3,6,9?你如何將一個鏈表中的每個點乘以一個數字x?
回答
使用列表理解:
In [1]: lis=[1,2,3]
In [2]: [x*3 for x in lis]
Out[2]: [3, 6, 9]
In [3]: num=123
In [4]: [int(x)*4 for x in str(num)] #convert num to a string and iterate over it
Out[4]: [4, 8, 12]
In [5]: ''.join(str(int(x)*3) for x in str(num)) #to get something like 4812
Out[5]: '4812'
這假定鏈表已經定義了一個迭代器,對於自定義類型可能是也可能不是。否則它將取決於列表。 –
很酷,如果它是123 * 4呢?此方法可能不適用於要乘以的所有x值?抱歉,在關於我想要的問題中不清楚。 –
@RahulSharma 123不是一個列表。 –
>>> list1 = [1, 2, 3]
>>> [x * 3 for x in list1]
[3, 6, 9]
>>>
的算法很簡單:
def multiply(L, x):
if L.is_empty():
return L
else:
return join(L.head * x, multiply(L.tail, x))
其中 「L.head」 是第一要素,L.tail是剩下的列表, join是一個函數,它把第一個參數作爲列表的第一個元素放在第二個參數中(所以join(1,[2,3]) - > [1,2,3])。
Python沒有簡單的鏈接列表作爲內置類型。 collections
模塊中有一個deque
類型,它實現了一個雙鏈表(並且可以像使用單鏈表一樣使用)。
也許你正在實現自己的鏈表類(作業)?
假設你的列表是迭代:
>>> map(lambda x: x*3, [12, 1, 42])
[36, 3, 126]
- 1. 乘以一個數列表中的每一個數字
- 2. 列表理解:將每個字符串乘以一個列表
- 3. 如何將每個文檔的數量乘以一個值?
- 4. 如何將一個變量乘以一個數字
- 5. 將數字乘以一個數字
- 6. 如何將一個列表中的單個元素與一個數字相乘?
- 7. 你如何將列表中的第一個元素乘以Python中的數字(列表中的列表)?
- 8. 如何爲前幾個月的每個X數生成一個鏈接列表?
- 9. 如何將每列乘以一個數字,然後爲每列設置新值?
- 10. 你如何在javascript中將一個數字表示爲一個字符串?
- 11. 將某個範圍內的每個單元乘以一個值
- 12. 如何在Python中將數字的每個數字乘以不同的數字?
- 13. 乘以一個字符串的數字
- 14. 如何在C#中將每個數字乘以1減去1?
- 15. 將arraylist中的每個數字相乘
- 16. javascript中的一個console.log內乘以一個變量的數字
- 17. 如何乘以一個值
- 18. 總結兩個鏈接列表,其中每個節點是一個數字
- 19. 將矩陣中的每一行乘以一個行向量
- 20. Python:在循環遍歷一個列表中,你如何乘以該列表的每個其他元素
- 21. 用Ruby中的數字乘以一個n維數組的每個元素
- 22. 乘以一個數字字符串
- 23. 將元音乘以一個字符串
- 24. Drupal:每個節點中的「上一個和下一個」鏈接?
- 25. 將數據列乘以一個參數
- 26. 如何將結果乘以另一個表中的特定值?
- 27. 乘以一個列表python
- 28. 乘以一個列表
- 29. 將一個數組中的每個元素與另一個數組的每個元素相乘的方式?
- 30. 將項目列表乘以某個數字'x'
Python沒有內置鏈表類型你是問一下自己的鏈接列表類型(在這種情況下,你應該表現出來),或約正常Python列表(它們沒有鏈接)? – interjay