
Explore the course structure for Python linked lists, from optional Python installation to singly, doubly, and circular linked lists, with brainteasers and attached exercises.
Install Python 3 on Windows, set up a text editor, and write your first Python program: Hello World, to run in the command prompt or IDLE.
Set up your macOS development environment by installing Python 3 and a text editor, such as Atom. Verify installation and run a Hello World program using the terminal and IDLE.
Set up a Linux development environment for Python by installing Python 3, idle, and an optional Atom editor, then write and run your first Hello World program.
Understand why a linked list outperforms a Python list for inserting or deleting at the beginning, by avoiding costly index shifts in large arrays.
Explore how a singly linked list uses nodes with data and a next pointer, starting from a head node, to create, insert, delete, and traverse elements while noting limitations.
Build a Python singly linked list by defining a node and a list class, appending nodes at the end, and printing the list from head to last node.
Learn how to insert a new node at the head of a linked list in Python, preserving the original head via a temporary node and updating links.
Implement the insert head method to place a new node at the beginning of the linked list, using a temporary node to preserve the previous head.
Learn how to insert a new node between two nodes in a singly linked list using Python, by traversing to the position, saving the previous node, and updating pointers.
Learn to insert a node between two existing nodes in a Python singly linked list, including insertion at a position, head insert, and length-based validation for invalid positions.
Traverse a singly linked list from head to end, store the last second node, then delete the last node by setting the next of that node to none, in Python.
Implement a delete end method in a Python linked list that traverses to the last node, updates the previous node's next to none, and verifies by printing the list.
Delete the head node in a linked list by moving to the next node, using a temporary node to detach and delete the old head in Python.
Delete the head node in a Python linked list by updating the head to the next node and breaking the head's link to avoid loops, handling empty or single-node lists.
Learn how to delete a middle node in a singly linked list using Python by traversing to the target, relinking the previous node to its next.
Learn how to delete a node at a given position in a singly linked list using Python, including handling head deletion and in-between removals.
Explore the limitations of a singly linked list, including extra storage for next pointers and traversal-based retrieval costs, and compare with Python's built-in lists.
Explore how to detect and remove a cycle in a singly linked list using an is_visited flag for each node, and prepare for implementing the solution in Python.
Detect and remove a cycle in a Python linked list by marking visited nodes with an is_visited flag and updating the next pointer to None.
Learn how to swap two nodes in a singly linked list by tracking the two nodes and their previous nodes, then update next pointers to swap data 3 and 7.
Implement a Python function to swap two nodes in a singly linked list by locating each node and its previous node, then re-linking their next pointers.
Sort a singly linked list in ascending order with a bubble-sort style approach by starting at the head, swapping nodes to bubble the largest element to the end.
Sort a singly linked list in Python using a swap next approach, tracking head and previous nodes, with list length-driven iterations to yield 1, 3, 4, 5.
Traverse the sorted singly linked list to identify consecutive duplicate nodes, remove the duplicates by rewiring pointers, and produce a unique list in Python.
Create a Python function remove_duplicate to traverse a sorted singly linked list, detect consecutive duplicates, bypass the duplicate node by re-linking current.next to duplicate.next, and print the resulting list.
Merge two sorted singly linked lists by traversing both in parallel, selecting the smaller node each time to build a new, sorted merged list.
Learn how to merge two sorted singly linked lists in python. Build a merged list by traversing both lists, updating next pointers, and handling end conditions.
Explore the doubly linked list and its node structure with data, next, and previous. Insert and delete nodes, traverse forward from the head, backward from the end, and note limitations.
Implement a Python doubly linked list by defining a node with data, next, and prev; build a list with insert end, then traverse and print forward and backward.
Insert a new node as the head in a doubly linked list, preserve head in a temporary node, then update the new head's next and the temporary node's previous pointers.
Insert a new node as the head in a doubly linked list using an insert head method, updating the head and links to Grace, Joe, and Mary.
insert a new node into a doubly linked list between two nodes by traversing to the target position and updating next and previous pointers, placing 30 between 10 and 20.
Insert a node into a doubly linked list in Python, placing it between two nodes or at the head or end, with length checks and invalid position handling.
Traverse from the head of a doubly linked list to find the last node by checking if the next node’s next is none, then remove that link to delete Matthew.
Delete the head node from a doubly linked list in Python, update the head to the second node, and clear the old head's pointers to complete the operation.
Implement head node deletion in a Python doubly linked list by moving the second node to head and severing links from the removed node.
Master deleting a middle node in a doubly linked list by traversing to the target, then updating the previous and next pointers to bypass it.
Traverse to the target position in a doubly linked list and update the neighboring nodes' pointers to remove the middle node using Python, producing 10, 20.
Examine the limitations of a doubly linked list, including extra memory for previous pointers and higher costs to insert or delete nodes at head, end, or in between.
Determine the middle node of a linked list in Python and check if the previous node's data is greater than the next node's data, using a doubly linked list.
Implement a Python program for a doubly linked list to check if the node before the middle has greater data than the node after it, requiring at least three nodes.
Learn to traverse a doubly linked list and divide a node's data by two whenever the previous node's data is odd, with Python implementation guidance.
Implement a Python program to divide a doubly linked list node by two when the previous node is odd, using modulo, traversing from the second node and printing the list.
Learn to reverse a doubly linked list by swapping next and previous pointers, using a temporary node to update links and move the head.
The lecture demonstrates implementing a Python program to reverse a doubly linked list by swapping next and previous pointers, using a current node, a next node, and updating the head.
Remove duplicates from an unsorted doubly linked list using a node count dictionary to track visits in Python. Traverse from end to start to unlink repeated nodes.
Learn to implement a Python program that removes duplicates from an unsorted doubly linked list, using a count dictionary to track duplicates and adjust links to preserve a single instance.
Learn to check if a doubly linked list is a palindrome in Python by using two pointers from the ends, comparing data, and confirming when pointers meet.
Learn to implement a palindrome check for a doubly linked list in Python using two pointers, starting at the head and tail, traversing inward to verify data.
Learn to implement a circular singly linked list in Python by building node and list classes, inserting nodes at the end, and printing the list.
Insert a new node as head of a circular singly linked list in Python, tracking the last node, pointing the new node to the head, and updating the last node.
Learn to delete the end node of a circular singly linked list in Python by traversing to the last node, updating the last second node's next to the head.
Delete the head node in a circular singly linked list using Python by updating the last node's next pointer to the new head and nullifying the old head's next.
Explore the limitations of a circular singly linked list, including the risk of infinite loops, costly head insertions, and the need to traverse to reach the last node.
Celebrate your mastery of linked lists and problem solving, with encouragement to practice more online problems to deepen your knowledge in linked list data structures using Python.
If you have started using Python, by now you must have come to know the simplicity of the language.
This course is designed to help you get more comfortable with programming in Python. It covers completely, the concept of linked list using Python as the primary language.
Along with their Python implementation, you will learn the essence of linked list by understanding the different types of linked lists such as
You need to be equipped with the basics of Python such as variables, lists, dictionary and so on.
You also need to be familiar with object oriented programming in Python such as classes and objects, inheritance, etc.
This course will teach you:
You are comfortable with the basics of Python. Why not leverage your Python skills by hitting the enrol button? I hope to see you on the inside.