[1] task-1 #172
|
|
@ -19,17 +19,37 @@ def ll_insert(head, name, phone):
|
|||
|
||||
def ll_find(head, name):
|
||||
running = head
|
||||
flag = True
|
||||
|
||||
while flag:
|
||||
while True:
|
||||
if running['name'] == name:
|
||||
return running['phone']
|
||||
running = running['next']
|
||||
flag = running is not None
|
||||
if running is None: break
|
||||
|
||||
return None
|
||||
|
||||
|
||||
def ll_delete(head, name):
|
||||
running = head
|
||||
|
||||
if running['name'] == name:
|
||||
return head['next']
|
||||
|
||||
while running['next']['name'] != name:
|
||||
running = running['next']
|
||||
if running['next']['next'] is None:
|
||||
if running['next']['name'] != name:
|
||||
return head
|
||||
if running['next']['next'] is None:
|
||||
running['next'] = None
|
||||
else: running['next'] = running['next']['next']
|
||||
|
||||
return head
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
def main():
|
||||
|
||||
|
|
@ -56,6 +76,15 @@ def main():
|
|||
print(name, ":", ll_find(head, name))
|
||||
print("======== END TESTING =============")
|
||||
|
||||
print('========== TESTING LL_DELETE ==========')
|
||||
|
||||
for _ in range(2):
|
||||
name = Name[rnd.randint(0, 4)]
|
||||
head = ll_delete(head, name)
|
||||
|
||||
print(head)
|
||||
print(name, ":", ll_find(head, name))
|
||||
print("========= END TESTING ==============")
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user