題目詳情:
今天在學習python裡集合時,老師提出了乙個問題,如何將列表裡的多餘的相同元素去掉,留下的列表每乙個元素都不相同,在不使用集合的相關知識前提下。
隨便給定乙個列表 l 如:
l =[1, 2, 2, 3, 4, 5, 6, 1, 5, 8, 4]
然後經過一系列的操作後,列表 l 的元素如下:
l =[1, 2, 3, 4, 5, 6, 8]
def
fun( l ):
l0 =
for i in l:
if i not
in l0:
l = l0
return l
#l = list( input('請給定乙個列表:') )
l = [1, 2, 2, 3, 4, 5, 6, 1, 5, 8, 4]
l = fun( l )
print( l )
運算結果:
>>>
restart:c
:/users/lenovo/onedrive/python/去除多餘的相同元素.py
[1, 2, 3, 4, 5, 6, 8]
>>>
運算結果也是符合題目預設的條件,將多餘的相同元素給去掉了。
疑問
其實我原本是想定義乙個函式模組,當隨便輸入乙個要轉換的列表,將這個列表傳入函式的引數,不過我對使用者輸入的列表賦值操作不太熟悉,就如同上面**裡我注釋部分一樣,
本想使用這個方法傳入列表 l ,但是後來執行結果不對,所以在想應該是使用有錯誤,才會導致下面的結果:
>>>
restart:c
:/users/lenovo/onedrive/python/去除多餘的相同元素.py
請給定乙個列表:[1, 2, 2, 3, 4, 5, 6, 1, 5, 8, 4]
['[', '1', ',', ' ', '2', ',', ' ', '2', ',', ' ', '3', ',', ' ', '4', ',', ' ', '5', ',', ' ', '6', ',', ' ', '1', ',', ' ', '5', ',', ' ', '8', ',', ' ', '4', ']']
>>>
希望可以通過後續的學習能解決這個問題,也歡迎各位有興趣的朋友能解答一下。
一點點小想法
刪除順序錶值相同的多餘元素
編寫演算法,在順序表l中,刪除所有值相等的多餘元素。函式介面定義 void delsame seqlist l l 指向順序表。裁判測試程式樣例 include define maxsize 20 struct seqlist typedef struct seqlist seqlist 型別定義 ...
刪除順序錶值相同的多餘元素
編寫演算法,在順序表l中,刪除所有值相等的多餘元素。函式介面定義 void delsame seqlist l l 指向順序表。裁判測試程式樣例 include define maxsize 20 struct seqlist typedef struct seqlist seqlist 型別定義 ...
刪除單鏈表中值相同的多餘元素
刪除單鏈表 有頭結點 中所有值相同的多餘元素,同時釋放被刪除的結點空間 思路 依次遍歷單鏈表中的全部結點,判斷該位置後邊有沒有重複的結點,如果有重複的結點,則刪除該結點並釋放空間 include include using namespace std const int flag 1 typedef...