ich zur Zeit Problem Solving with Algorithms and Data StructuresEntwickeln Sie ein Experiment, das die Leistung des del Operator auf Listen und Wörterbücher vergleicht
Also hier mache ich auf Programmierung Übung am 3. Frage, sagt es ein Experiment entwickeln, die die Leistung vergleicht der der Del-Operator auf Listen und Wörterbüchern. Hier
ist die Lösung von meiner Seite:
3) Entwickeln Sie ein Experiment, das die Leistung des
del
Operator auf Listen und Wörterbücher vergleicht.
1) Listen:
def listitems(lis):
del(lis[16])
return lis
def time_taken(n):
start_time = time.time()
result = n
end_time = time.time()
return end_time - start_time, result
print time_taken(listitems([1,2,3,5,4,5,6,5,4,8,5,2,4,5,2,6,3,5,12,4,2,5,2,4,[1,5,4,5,4,54,5,5,6,4,5,[2,4,5,5,1,2,5]]]))
2) Wörterbuch
def dictionary(dic):
del(dic["Topic"])
return dic
def time_taken(n):
start_time = time.time()
result = n
end_time = time.time()
return end_time - start_time, result
print time_taken(dictionary({"Name": "Pradeep", "Age": 23, "Learning": "Python", "Topic": "Big O Notation"}))
Ausgang:
(0.0, [1, 2, 3, 5, 4, 5, 6, 5, 4, 8, 5, 2, 4, 5, 2, 6, 5, 12, 4, 2, 5, 2, 4, [1, 5, 4, 5, 4, 54, 5, 5, 6, 4, 5, [2, 4, 5, 5, 1, 2, 5]]])
(0.0, {'Age': 23, 'Name': 'Pradeep', 'Learning': 'Python'})
So nach Big O-Notation Liste Ausgabezeit sollte von Wörterbuch unterschiedlich sein Ausgabezeit
Referenz: Time Complexity
Sie tun nicht wirklich die Löschung. Sie tun 'result = n' anstelle von' result = dictionary (n) 'oder' result = listitems (n) '. Der Ort, an dem Sie momentan 'listitems' und' dictionary' haben, bewirkt, dass sie ausgewertet werden, bevor 'time_taken' ausgeführt wird. –