我想插入項目對(字母,頻率)到一個有序的鏈接列表。到目前爲止,我能夠創建排序的鏈表,但我無法弄清楚如何更新頻率並重新排列列表,如果一封信得到兩次。插入到有序的鏈接列表Python和總和重複
到目前爲止,我有:
def add(self, letter, frequency):
temp = Frequency(letter, frequency)
curr = self.head
prev = None
stop = False
while curr != None and not stop:
if curr.frequency < temp.frequency:
stop = True
else:
prev = curr
curr = curr.next
if prev == None:
temp.set_next(self.head)
self.head = temp
else:
temp.set_next(curr)
prev.set_next(temp)
f = SortedFrequencyList()
f.add('a', 3)
f.add('b', 5)
f.add('g' 1)
回報
({b: 5}, {a: 3}, {g: 1})
但如果我是做
f = SortedFrequencyList()
f.add('a', 3)
f.add('b', 5)
f.add('g', 1)
f.add('a', 3)
我得到
({b: 5}, {a: 3}, {a: 3}, {g: 1})
代替
({a: 6}, {b: 5}, {g: 1})
關於總和和重排,你試過了什麼? – ppperry
你有同樣的項目,這個?http://stackoverflow.com/questions/7453939/adding-to-a-linked-list – FBruynbroeck
是的。這是確切的一個 – Mikey