There are currently no frequently asked questions associated with this exercise – that’s where you come in! You can contribute to this section by offering your own questions, answers, or clarifications on this exercise. Ask or answer a question by clicking reply () below.
If you’ve had an “aha” moment about the concepts, formatting, syntax, or anything else with this exercise, consider sharing those insights! Teaching others and answering their questions is one of the best ways to learn and stay sharp.
Join the Discussion. Help a fellow learner on their journey.
Ask or answer a question about this exercise by clicking reply () below!
Agree with a comment or answer? Like () to up-vote the contribution!
Not sure what’s going on but this page (lesson) seems locked up. When I click on Save/Run the icon just keeps spinning and never finishes. This has been going on now for 24 hours.
It does appear to be the script of mine linked_list.py. I would first suspect the while loop. I’m just not sure why its hanging.
def remove_duplicates(self):
#Store a reference to the head node
current_node = self.head
#Check if there a .next node an that .next node contain the same values as the current node
# remove the duplicate by reassigning the .next property of the current node.
while current_node:
while current_node.next and current_node.next.val == current_node.val:
current_node.next = current_node.next.next
current_node = current_node.next
return self
EDIT
Indention got me, fixed.
def remove_duplicates(self):
#Store a reference to the head node
current_node = self.head
#Check if there a .next node an that .next node contain the same values as the current node
# remove the duplicate by reassigning the .next property of the current node.
while current_node:
while current_node.next and current_node.next.val == current_node.val:
current_node.next = current_node.next.next
current_node = current_node.next
return self
hat happen because of an infinite loop probably… have to refresh the browser and fix the code.
I created a different solution to remove duplicated using only one loop:
My solution
def remove_duplicates(self):
previous_node = self.head
current_node = self.head.next
# traverse to the end:
while current_node:
# check if the value is unique:
value = current_node.val
if value == previous_node.val:
# this value is duplicated; remove node:
previous_node.next = current_node.next
else:
# unique value; refresh the previous node
previous_node = current_node
# move to the next node:
current_node = current_node.next
return self