title
2.14 Circular Linked List in Data Structure | Creation and Display | DSA Course

description
In this video I have written a C program for implementation (creation and display) of a Circular Linked List. DSA Full Course: https: https://www.youtube.com/playlist?list=PLdo5W4Nhv31bbKJzrsKfMpo_grxuLl8LU ****************************************** See Complete Playlists: C Programming Course: https://www.youtube.com/playlist?list=PLdo5W4Nhv31a8UcMN9-35ghv8qyFWD9_S C++ Programming: https://www.youtube.com/playlist?list=PLdo5W4Nhv31YU5Wx1dopka58teWP9aCee Python Full Course: https://www.youtube.com/playlist?list=PLdo5W4Nhv31bZSiqiOL5ta39vSnBxpOPT Printing Pattern in C: https://www.youtube.com/playlist?list=PLdo5W4Nhv31Yu1igxTE2x0aeShbKtVcCy DAA Course: https://www.youtube.com/playlist?list=PLdo5W4Nhv31ZTn2P9vF02bkb3SC8uiUUn Placement Series: https://www.youtube.com/playlist?list=PLdo5W4Nhv31YvlDpJhvOYbM9Ap8UypgEy Dynamic Programming: https://www.youtube.com/playlist?list=PLdo5W4Nhv31aBrJE1WS4MR9LRfbmZrAQu Operating Systems: //www.youtube.com/playlist?list=PLdo5W4Nhv31a5ucW_S1K3-x6ztBRD-PNa DBMS: https://www.youtube.com/playlist?list=PLdo5W4Nhv31b33kF46f9aFjoJPOkdlsRc ********************************************* Connect & Contact Me: Facebook: https://www.facebook.com/Jennys-Lectures-CSIT-Netjrf-316814368950701/ Quora: https://www.quora.com/profile/Jayanti-Khatri-Lamba Instagram: https://www.instagram.com/jayantikhatrilamba/ #circularlinkedlist #jennyslectures #linkedlist #datastructures

detail
{'title': '2.14 Circular Linked List in Data Structure | Creation and Display | DSA Course', 'heatmap': [{'end': 996.094, 'start': 952.167, 'weight': 0.719}], 'summary': 'Discusses circular linked lists, dynamic memory allocation in c, linked list operations, circular linked list creation and traversal, and traversing linked lists, covering concepts, implementation, and user interaction, with a focus on pointers, memory allocation, and data manipulation.', 'chapters': [{'end': 234.743, 'segs': [{'end': 70.26, 'src': 'embed', 'start': 21.751, 'weight': 0, 'content': [{'end': 27.737, 'text': 'one is data part, one is address part, and this part, this pointer, is containing address of the next node.', 'start': 21.751, 'duration': 5.986}, {'end': 33.223, 'text': 'that is, address of next node, is 150, right here 300, here 100..', 'start': 27.737, 'duration': 5.486}, {'end': 37.606, 'text': "right. see, it's not compulsory that the addresses would be in ascending order or descending order.", 'start': 33.223, 'duration': 4.383}, {'end': 43.39, 'text': 'any random address, any random location can be, you know, dynamically allocated to these nodes.', 'start': 37.606, 'duration': 5.784}, {'end': 44.711, 'text': 'right, and we have a head pointer.', 'start': 43.39, 'duration': 1.321}, {'end': 47.573, 'text': 'head is containing address of the first node.', 'start': 44.711, 'duration': 2.862}, {'end': 54.818, 'text': 'right now, to make it a circular linked list, you just have to change it a little bit.', 'start': 47.573, 'duration': 7.245}, {'end': 56.419, 'text': 'and what is that change?', 'start': 54.818, 'duration': 1.601}, {'end': 62.974, 'text': 'see, in the last node, see, the pointer is containing zero, null.', 'start': 56.419, 'duration': 6.555}, {'end': 68.639, 'text': 'it means it is not pointing to any node now for to make it a circular list.', 'start': 62.974, 'duration': 5.665}, {'end': 70.26, 'text': 'what we will do here?', 'start': 68.639, 'duration': 1.621}], 'summary': 'Explanation of circular linked list with node addresses and pointers', 'duration': 48.509, 'max_score': 21.751, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/fmfx1C4TTxw/pics/fmfx1C4TTxw21751.jpg'}, {'end': 132.958, 'src': 'embed', 'start': 104.292, 'weight': 1, 'content': [{'end': 106.335, 'text': 'But here we have the address of the first node.', 'start': 104.292, 'duration': 2.043}, {'end': 108.037, 'text': 'So it is a circle like this.', 'start': 106.455, 'duration': 1.582}, {'end': 113.444, 'text': 'In a circle we cannot say from where the circle is going to start and where the circle is going to be end.', 'start': 108.918, 'duration': 4.526}, {'end': 119.275, 'text': 'right. so now see how to implement this linked list, this circular linked list,', 'start': 114.454, 'duration': 4.821}, {'end': 124.156, 'text': 'how to create the linked list and how to display the content of this linked list.', 'start': 119.275, 'duration': 4.881}, {'end': 127.357, 'text': 'right, it is same as singly linked list.', 'start': 124.156, 'duration': 3.201}, {'end': 129.317, 'text': 'only one is this difference.', 'start': 127.357, 'duration': 1.96}, {'end': 132.958, 'text': 'you have to implement, you have to change in that, create function.', 'start': 129.317, 'duration': 3.641}], 'summary': 'The transcript discusses implementing a circular linked list similar to a singly linked list, with the key difference being the implementation of the create function.', 'duration': 28.666, 'max_score': 104.292, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/fmfx1C4TTxw/pics/fmfx1C4TTxw104292.jpg'}], 'start': 0.229, 'title': 'Circular linked lists', 'summary': 'Explains the concept, structure, and implementation of circular linked lists, detailing the changes required to convert a singly linked list into a circular linked list. it also discusses the creation, representation of nodes, and pointers declaration, emphasizing similarities with singly linked lists and the involved data types.', 'chapters': [{'end': 127.357, 'start': 0.229, 'title': 'Circular linked list', 'summary': 'Explains the concept of a circular linked list, including its structure, implementation, and display, detailing the changes required to convert a singly linked list into a circular linked list.', 'duration': 127.128, 'highlights': ["A circular linked list is formed by changing the last node's pointer to store the address of the first node, creating a circular structure. To convert a singly linked list into a circular linked list, the last node's pointer is modified to store the address of the first node, creating a circular structure.", 'Addresses in a circular linked list can be randomly allocated and do not need to follow a specific order. In a circular linked list, the addresses of nodes can be dynamically allocated and need not follow a specific order, allowing for random allocation of addresses.', 'The chapter also covers the implementation and display of a circular linked list, similar to a singly linked list. The chapter also discusses the implementation and display of a circular linked list, which is similar to that of a singly linked list.']}, {'end': 234.743, 'start': 127.357, 'title': 'Circular linked list creation', 'summary': 'Discusses the creation of a circular linked list, including the representation of nodes and the declaration of pointers, emphasizing the similarities with singly linked lists and the data types involved.', 'duration': 107.386, 'highlights': ['The chapter discusses the creation of a circular linked list, including the representation of nodes and the declaration of pointers The chapter provides insights into the process of creating a circular linked list, focusing on the representation of nodes and the declaration of pointers, highlighting the similarities with singly linked lists.', 'The explanation of the struct node and the data type of the next pointer The transcript explains the struct node and delves into the data type of the next pointer, emphasizing its role in storing the address of the next node and the importance of understanding data types in pointer declarations.', 'Emphasis on the similarities between singly linked list and circular linked list creation The chapter emphasizes the similarities between the creation of singly linked lists and circular linked lists, providing a reference to the previous video on singly linked list creation and highlighting the commonalities in the code.']}], 'duration': 234.514, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/fmfx1C4TTxw/pics/fmfx1C4TTxw229.jpg', 'highlights': ["A circular linked list is formed by changing the last node's pointer to store the address of the first node, creating a circular structure.", 'The chapter discusses the creation of a circular linked list, including the representation of nodes and the declaration of pointers.', 'Addresses in a circular linked list can be randomly allocated and do not need to follow a specific order.']}, {'end': 398.602, 'segs': [{'end': 285.909, 'src': 'embed', 'start': 256.642, 'weight': 0, 'content': [{'end': 259.603, 'text': 'fine, so how we allocate the memory dynamically?', 'start': 256.642, 'duration': 2.961}, {'end': 265.185, 'text': 'we are going to allocate the memory using malloc function in c and i hope you know the syntax of malloc function.', 'start': 259.603, 'duration': 5.582}, {'end': 269.107, 'text': 'we have already discussed many times how we will write here.', 'start': 265.185, 'duration': 3.922}, {'end': 280.627, 'text': 'we will basically write what that malloc keyword and in bracket we write size of size of a keyword, how much size you want, size for this node.', 'start': 269.107, 'duration': 11.52}, {'end': 285.909, 'text': 'so here you will write the data type of this node, that is struct node right,', 'start': 280.627, 'duration': 5.282}], 'summary': 'Allocate memory using malloc function in c for struct node.', 'duration': 29.267, 'max_score': 256.642, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/fmfx1C4TTxw/pics/fmfx1C4TTxw256642.jpg'}], 'start': 234.743, 'title': 'Dynamic memory allocation in c', 'summary': 'Discusses the process of dynamically allocating memory for nodes in c using malloc function, including the syntax and the returned memory size, with a focus on creating and storing pointers to the allocated memory.', 'chapters': [{'end': 398.602, 'start': 234.743, 'title': 'Dynamic memory allocation in c', 'summary': 'Discusses the process of dynamically allocating memory for nodes in c using malloc function, including the syntax and the returned memory size, with a focus on creating and storing pointers to the allocated memory.', 'duration': 163.859, 'highlights': ['The chapter explains the process of dynamically allocating memory for nodes in C using the malloc function, involving the allocation of memory for storing integer type data and pointer variables.', 'It details the syntax of the malloc function and its return value, emphasizing the size of the allocated memory block and the typecasting of the void pointer to a pointer to the node structure.', 'The discussion includes a step-by-step demonstration of memory allocation using malloc, covering the size allocation for the node and the typecasting of the returned void pointer to a pointer to the node structure.']}], 'duration': 163.859, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/fmfx1C4TTxw/pics/fmfx1C4TTxw234743.jpg', 'highlights': ['The chapter explains the process of dynamically allocating memory for nodes in C using the malloc function, involving the allocation of memory for storing integer type data and pointer variables.', 'It details the syntax of the malloc function and its return value, emphasizing the size of the allocated memory block and the typecasting of the void pointer to a pointer to the node structure.', 'The discussion includes a step-by-step demonstration of memory allocation using malloc, covering the size allocation for the node and the typecasting of the returned void pointer to a pointer to the node structure.']}, {'end': 909.664, 'segs': [{'end': 474.224, 'src': 'embed', 'start': 423.338, 'weight': 4, 'content': [{'end': 428.622, 'text': 'now i want to insert this node into the list how you will insert, because list is empty.', 'start': 423.338, 'duration': 5.284}, {'end': 435.557, 'text': 'so now directly, what you can do in head, we will store what this 200 It means.', 'start': 428.622, 'duration': 6.935}, {'end': 436.938, 'text': 'now head is pointing to this node.', 'start': 435.557, 'duration': 1.381}, {'end': 438.3, 'text': 'Now this is a list.', 'start': 437.539, 'duration': 0.761}, {'end': 444.905, 'text': 'Right? So directly I can write here what? Head is equal to new node.', 'start': 439.14, 'duration': 5.765}, {'end': 449.088, 'text': 'Fine But this is not done.', 'start': 447.547, 'duration': 1.541}, {'end': 449.869, 'text': 'That is fine.', 'start': 449.308, 'duration': 0.561}, {'end': 451.45, 'text': 'If you insert first one node.', 'start': 449.929, 'duration': 1.521}, {'end': 453.792, 'text': 'Now if I want to insert a second node.', 'start': 451.89, 'duration': 1.902}, {'end': 455.974, 'text': 'In that case suppose this is a node.', 'start': 453.952, 'duration': 2.022}, {'end': 461.802, 'text': 'So now, see this, now the new node would be pointing to this node.', 'start': 458.001, 'duration': 3.801}, {'end': 466.563, 'text': 'Suppose address is 150, so now new node is going to store 150.', 'start': 461.842, 'duration': 4.721}, {'end': 474.224, 'text': 'New node is pointing to this node, right? And if I write here head is equal to new node, means head is going to contain now 150.', 'start': 466.563, 'duration': 7.661}], 'summary': 'Inserting nodes into an empty list with specific pointers and values.', 'duration': 50.886, 'max_score': 423.338, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/fmfx1C4TTxw/pics/fmfx1C4TTxw423338.jpg'}, {'end': 669.777, 'src': 'embed', 'start': 635.011, 'weight': 2, 'content': [{'end': 636.973, 'text': 'New node is pointing to the newly created node.', 'start': 635.011, 'duration': 1.962}, {'end': 641.176, 'text': 'So how we can access this node? So we need to maintain another pointer.', 'start': 637.453, 'duration': 3.723}, {'end': 641.977, 'text': 'You can say temp.', 'start': 641.256, 'duration': 0.721}, {'end': 646.64, 'text': 'So here you can have another pointer.', 'start': 642.457, 'duration': 4.183}, {'end': 648.702, 'text': 'that is temp right?', 'start': 646.64, 'duration': 2.062}, {'end': 657.131, 'text': 'if head is equal to, is equal to null, head is equal to new node or here also here only we will store temp,', 'start': 650.908, 'duration': 6.223}, {'end': 662.374, 'text': 'also containing whatever the value in new node.', 'start': 657.131, 'duration': 5.243}, {'end': 669.777, 'text': 'so after inserting this first node we have one another pointer that is also having this 200.', 'start': 662.374, 'duration': 7.403}], 'summary': 'New node points to created node, accessed using temp pointer. head null: head=new node, temp stores new value.', 'duration': 34.766, 'max_score': 635.011, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/fmfx1C4TTxw/pics/fmfx1C4TTxw635011.jpg'}, {'end': 799.577, 'src': 'embed', 'start': 774.984, 'weight': 3, 'content': [{'end': 781.924, 'text': 'so now temp is pointing to this node And if you want to insert fourth node, that is also fine.', 'start': 774.984, 'duration': 6.94}, {'end': 783.545, 'text': 'In else part, temp next.', 'start': 782.364, 'duration': 1.181}, {'end': 785.247, 'text': 'Temp of next means this one.', 'start': 783.846, 'duration': 1.401}, {'end': 789.109, 'text': 'Here I will store whatever the value in new node, in newly created node.', 'start': 785.567, 'duration': 3.542}, {'end': 792.131, 'text': 'Fine And after that, we will move this temp.', 'start': 789.53, 'duration': 2.601}, {'end': 797.055, 'text': 'Right Now, suppose I want to stop here.', 'start': 793.232, 'duration': 3.823}, {'end': 799.577, 'text': "I don't want to insert any extra node.", 'start': 797.555, 'duration': 2.022}], 'summary': 'Inserting a new node is possible, using temp to store and move through values.', 'duration': 24.593, 'max_score': 774.984, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/fmfx1C4TTxw/pics/fmfx1C4TTxw774984.jpg'}, {'end': 862.824, 'src': 'embed', 'start': 831.295, 'weight': 1, 'content': [{'end': 833.857, 'text': 'so now it is having 200.', 'start': 831.295, 'duration': 2.562}, {'end': 839.4, 'text': 'fine, and now this, this pointer.', 'start': 833.857, 'duration': 5.543}, {'end': 842.428, 'text': 'this node is pointing to this one.', 'start': 839.4, 'duration': 3.028}, {'end': 844.773, 'text': 'and now this is a circular linked list.', 'start': 842.428, 'duration': 2.345}, {'end': 845.656, 'text': 'see, as you can see.', 'start': 844.773, 'duration': 0.883}, {'end': 853.32, 'text': 'so only this line you have to add in this code of singly linked list creation to make it a circular linked list.', 'start': 846.618, 'duration': 6.702}, {'end': 854.921, 'text': 'and now you can write the same code.', 'start': 853.32, 'duration': 1.601}, {'end': 856.422, 'text': 'you can write here printf.', 'start': 854.921, 'duration': 1.501}, {'end': 858.262, 'text': 'you will ask from the user do you want to continue?', 'start': 856.422, 'duration': 1.84}, {'end': 862.824, 'text': 'want to insert another node, type 1 for continuation and 0 for exit?', 'start': 858.262, 'duration': 4.562}], 'summary': 'The transcript discusses creating a circular linked list and prompting user for continuation.', 'duration': 31.529, 'max_score': 831.295, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/fmfx1C4TTxw/pics/fmfx1C4TTxw831295.jpg'}, {'end': 914.928, 'src': 'embed', 'start': 887.595, 'weight': 0, 'content': [{'end': 891.718, 'text': 'another. if again user press one, another new node would be created.', 'start': 887.595, 'duration': 4.123}, {'end': 899.043, 'text': 'it means these lines from this line, because this is the line where dynamically this memory would be allocated means new node would be created.', 'start': 891.718, 'duration': 7.325}, {'end': 901.044, 'text': 'so these lines would be in loop.', 'start': 899.043, 'duration': 2.001}, {'end': 909.664, 'text': 'so here i can write before this line i can write while choice and in the bracket fine.', 'start': 901.044, 'duration': 8.62}, {'end': 914.928, 'text': 'so here you can write after this else printf one, press one for continuation and zero for exit.', 'start': 909.664, 'duration': 5.264}], 'summary': 'Dynamically allocate memory for new nodes in a loop.', 'duration': 27.333, 'max_score': 887.595, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/fmfx1C4TTxw/pics/fmfx1C4TTxw887595.jpg'}], 'start': 398.602, 'title': 'Linked list operations', 'summary': 'Covers inserting nodes into a linked list, emphasizing use of pointers, logic to maintain references, avoiding loss of connections, and limitations. it also explains creating a circular linked list, illustrating steps to insert nodes, transition to a circular list, use of pointers, memory allocation, and provision for user interaction.', 'chapters': [{'end': 662.374, 'start': 398.602, 'title': 'Inserting nodes in a linked list', 'summary': 'Explores the process of inserting nodes into a linked list, detailing the use of pointers and logic to maintain references, with a focus on avoiding loss of connections, and limitations in the initial approach.', 'duration': 263.772, 'highlights': ['To insert the first node, the head is directly assigned to the new node, establishing the initial link. When inserting the first node, the head is assigned to the new node, creating a direct link, such as head = new node, indicating the establishment of the initial node in the list.', 'When inserting the second node, the new node should point to the next node and then the head is updated to the new node, maintaining the reference to the previous node. For the insertion of the second node, the new node should point to the next node, and then the head is updated to the new node, ensuring the maintenance of the reference to the previous node.', 'To insert subsequent nodes, a temp pointer is used to maintain access to the nodes, preventing loss of reference and enabling the creation of links between nodes. For the insertion of subsequent nodes, a temp pointer is utilized to maintain access to the nodes, preventing loss of reference and facilitating the establishment of links between the nodes.']}, {'end': 909.664, 'start': 662.374, 'title': 'Creating circular linked list', 'summary': 'Explains the process of creating a circular linked list, emphasizing the steps to insert nodes and the transition to a circular list, while illustrating the use of pointers and memory allocation, with a provision for user interaction to continue adding nodes.', 'duration': 247.29, 'highlights': ['By using pointers, the speaker demonstrates the process of inserting nodes into a linked list, elucidating the connection between nodes and the utilization of temp pointers to access and manipulate the list.', 'The transition to a circular linked list is exemplified, emphasizing the crucial step of linking the last node to the first node to complete the circular structure.', 'The provision for user interaction is highlighted, showcasing the use of a while loop to enable continuous addition of nodes based on user input, with a clear explanation of the conditions for node creation and memory allocation.']}], 'duration': 511.062, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/fmfx1C4TTxw/pics/fmfx1C4TTxw398602.jpg', 'highlights': ['The provision for user interaction is highlighted, showcasing the use of a while loop to enable continuous addition of nodes based on user input, with a clear explanation of the conditions for node creation and memory allocation.', 'The transition to a circular linked list is exemplified, emphasizing the crucial step of linking the last node to the first node to complete the circular structure.', 'By using pointers, the speaker demonstrates the process of inserting nodes into a linked list, elucidating the connection between nodes and the utilization of temp pointers to access and manipulate the list.', 'To insert subsequent nodes, a temp pointer is used to maintain access to the nodes, preventing loss of reference and enabling the creation of links between nodes.', 'When inserting the second node, the new node should point to the next node and then the head is updated to the new node, maintaining the reference to the previous node.', 'To insert the first node, the head is directly assigned to the new node, establishing the initial link.']}, {'end': 1077.471, 'segs': [{'end': 952.167, 'src': 'embed', 'start': 928.48, 'weight': 1, 'content': [{'end': 935.993, 'text': 'sometimes somewhere you find out that they will maintain the last node, not the head node.', 'start': 928.48, 'duration': 7.513}, {'end': 936.753, 'text': 'that is also fine.', 'start': 935.993, 'duration': 0.76}, {'end': 939.856, 'text': 'you can maintain a last node, means the tail node.', 'start': 936.753, 'duration': 3.103}, {'end': 947.663, 'text': 'point to the tail node, not the head node, and see if you want to cross check that we have created a circular linked list or not.', 'start': 939.856, 'duration': 7.807}, {'end': 952.167, 'text': 'then what you can do here after this printf and scanf, after maybe the swile loop.', 'start': 947.663, 'duration': 4.504}], 'summary': 'Maintain a tail node, not head node, for creating a circular linked list.', 'duration': 23.687, 'max_score': 928.48, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/fmfx1C4TTxw/pics/fmfx1C4TTxw928480.jpg'}, {'end': 1010.104, 'src': 'heatmap', 'start': 952.167, 'weight': 0, 'content': [{'end': 956.258, 'text': 'you can do what you can print what see here.', 'start': 952.167, 'duration': 4.091}, {'end': 960.919, 'text': 'this is the last node and after inserting 3, temp would be pointing to the last node.', 'start': 956.258, 'duration': 4.661}, {'end': 963.039, 'text': 'right now temp is pointing to this node.', 'start': 960.919, 'duration': 2.12}, {'end': 966.12, 'text': 'so in printf what you can print.', 'start': 963.039, 'duration': 3.081}, {'end': 968.82, 'text': 'temp next.', 'start': 966.12, 'duration': 2.7}, {'end': 972.161, 'text': 'temp next means this thing right, 200.', 'start': 968.82, 'duration': 3.341}, {'end': 977.562, 'text': 'so 200 means we have reached till this node and the data of this node is 7.', 'start': 972.161, 'duration': 5.401}, {'end': 981.562, 'text': 'so again arrow and data.', 'start': 977.562, 'duration': 4}, {'end': 985.987, 'text': 'so this should be printed what 7?', 'start': 981.562, 'duration': 4.425}, {'end': 989.089, 'text': 'right, it means we have created a circular linked list.', 'start': 985.987, 'duration': 3.102}, {'end': 991.891, 'text': 'so now we will see how to display this circular linked list.', 'start': 989.089, 'duration': 2.802}, {'end': 996.094, 'text': 'so now for traversing this list from here to here, or you can say for displaying the data,', 'start': 991.891, 'duration': 4.203}, {'end': 998.736, 'text': 'obviously we need a pointer because we cannot move this head.', 'start': 996.094, 'duration': 2.642}, {'end': 1000.917, 'text': 'we need another pointer right.', 'start': 998.736, 'duration': 2.181}, {'end': 1003.039, 'text': 'so now this is the function.', 'start': 1000.917, 'duration': 2.122}, {'end': 1010.104, 'text': 'we are going to define this function and here i want to take another pointer, that is temp.', 'start': 1003.039, 'duration': 7.065}], 'summary': 'Demonstration of creating and displaying a circular linked list using pointers and data values.', 'duration': 57.937, 'max_score': 952.167, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/fmfx1C4TTxw/pics/fmfx1C4TTxw952167.jpg'}], 'start': 909.664, 'title': 'Circular linked list creation and traversal', 'summary': 'Discusses the process of creating a circular linked list and traversing it, emphasizing the importance of maintaining the last node and displaying the data, with a focus on pointers and data manipulation.', 'chapters': [{'end': 1077.471, 'start': 909.664, 'title': 'Creating circular linked list and traversing', 'summary': 'Discusses the process of creating a circular linked list and traversing it, utilizing pointers and conditional checks, emphasizing the importance of maintaining the last node and displaying the data, with a focus on pointers and data manipulation.', 'duration': 167.807, 'highlights': ['The chapter highlights the process of creating a circular linked list, emphasizing the usage of pointers and conditional checks, and the significance of maintaining the last node instead of the head node.', 'It also discusses the traversal of the circular linked list, focusing on utilizing pointers and conditional checks to display the data, highlighting the importance of accessing and printing the data using pointers.', 'The importance of maintaining the last node, not the head node, for creating a circular linked list is emphasized, suggesting an alternative approach to the traditional method.']}], 'duration': 167.807, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/fmfx1C4TTxw/pics/fmfx1C4TTxw909664.jpg', 'highlights': ['The chapter emphasizes the process of creating a circular linked list using pointers and conditional checks.', 'It discusses the significance of maintaining the last node instead of the head node.', 'The traversal of the circular linked list is highlighted, focusing on utilizing pointers and conditional checks to display the data.']}, {'end': 1289.368, 'segs': [{'end': 1106.123, 'src': 'embed', 'start': 1077.471, 'weight': 0, 'content': [{'end': 1080.933, 'text': 'but now we we want to print six also, then one also.', 'start': 1077.471, 'duration': 3.462}, {'end': 1087.156, 'text': 'so now we have to use a loop, and from where till till where i want to print till here.', 'start': 1080.933, 'duration': 6.223}, {'end': 1094.219, 'text': 'so now, in singly linked list, what we have done while temp not equal to null, because in that case, here null it was the last pointer.', 'start': 1087.156, 'duration': 7.063}, {'end': 1095.599, 'text': 'but here this is not a case.', 'start': 1094.219, 'duration': 1.38}, {'end': 1096.6, 'text': "here we don't have null.", 'start': 1095.599, 'duration': 1.001}, {'end': 1099.241, 'text': 'so what condition you will write in while loop?', 'start': 1096.6, 'duration': 2.641}, {'end': 1106.123, 'text': 'so before this line, before printing what you will write, you will write a while loop, while now the condition is what.', 'start': 1099.241, 'duration': 6.882}], 'summary': 'Using a loop to print six and one in a singly linked list.', 'duration': 28.652, 'max_score': 1077.471, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/fmfx1C4TTxw/pics/fmfx1C4TTxw1077471.jpg'}, {'end': 1289.368, 'src': 'embed', 'start': 1264.017, 'weight': 1, 'content': [{'end': 1269.259, 'text': "we cannot write down that condition of null because we don't have null in the circular linked list.", 'start': 1264.017, 'duration': 5.242}, {'end': 1270.539, 'text': 'find somewhere.', 'start': 1269.639, 'duration': 0.9}, {'end': 1275.482, 'text': 'you will find out that they will maintain only the last node and using the last node they will traverse the list.', 'start': 1270.539, 'duration': 4.943}, {'end': 1278.123, 'text': 'so that also we will discuss later in the videos.', 'start': 1275.482, 'duration': 2.641}, {'end': 1283.585, 'text': 'so this is all about how to traverse a circular linked list and how to create a circular linked list.', 'start': 1278.123, 'duration': 5.462}, {'end': 1287.327, 'text': 'so in next video we will see how to insert a data in a circular linked list.', 'start': 1283.585, 'duration': 3.742}, {'end': 1288.348, 'text': "so i'll see you in the next video.", 'start': 1287.327, 'duration': 1.021}, {'end': 1289.368, 'text': 'till then, bye, bye, take care.', 'start': 1288.348, 'duration': 1.02}], 'summary': 'Explains traversing and creating a circular linked list. next, will cover inserting data.', 'duration': 25.351, 'max_score': 1264.017, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/fmfx1C4TTxw/pics/fmfx1C4TTxw1264017.jpg'}], 'start': 1077.471, 'title': 'Traversing linked lists', 'summary': 'Covers printing a linked list with a loop, traversing a linked list using a while loop and node pointers, and traversing a circular linked list. it emphasizes the process and termination conditions for each traversal type and mentions the upcoming topic on inserting data into a circular linked list.', 'chapters': [{'end': 1121.687, 'start': 1077.471, 'title': 'Printing a linked list with a loop', 'summary': 'Discusses the use of a loop to print elements of a singly linked list, addressing the condition for terminating the loop and reaching the last node.', 'duration': 44.216, 'highlights': ['Using a loop to print elements of a singly linked list is discussed, with the condition for terminating the loop addressed.', 'The concept of reaching the last node in a singly linked list is explained using a specific example.', 'The need to define a condition in the while loop before printing the linked list is emphasized.']}, {'end': 1217.103, 'start': 1121.687, 'title': 'Traversing a linked list', 'summary': 'Explains the process of traversing a linked list, emphasizing the use of a while loop and node pointers to iterate through the list, with a specific example of data values being printed and node movements.', 'duration': 95.416, 'highlights': ['Traversing a linked list involves using a while loop and node pointers to iterate through the list. The process of traversing a linked list is explained, emphasizing the use of a while loop and node pointers to iterate through the list.', 'Specific example of data values being printed and node movements is provided. A specific example is provided where data values are printed and node movements are explained within the context of traversing the linked list.']}, {'end': 1289.368, 'start': 1217.103, 'title': 'Traversing circular linked list', 'summary': 'Explains the process of traversing and displaying a circular linked list, highlighting the difference in the traversal condition and the method to display all content, and concludes with the mention of the upcoming topic on inserting data into a circular linked list.', 'duration': 72.265, 'highlights': ['The difference in traversing a circular linked list lies in changing the condition in the while loop, as null cannot be used due to the absence of null in a circular linked list.', 'Explanation of the method to display all content of the circular linked list after traversing, emphasizing the use of temp data to print the nodes.', 'Highlighting the process of traversing a circular linked list and the mention of discussing the method of maintaining the last node for list traversal in the upcoming videos.']}], 'duration': 211.897, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/fmfx1C4TTxw/pics/fmfx1C4TTxw1077471.jpg', 'highlights': ['Covers printing a linked list with a loop, traversing a linked list using a while loop and node pointers, and traversing a circular linked list.', 'The concept of reaching the last node in a singly linked list is explained using a specific example.', 'Traversing a linked list involves using a while loop and node pointers to iterate through the list.', 'The difference in traversing a circular linked list lies in changing the condition in the while loop, as null cannot be used due to the absence of null in a circular linked list.']}], 'highlights': ["A circular linked list is formed by changing the last node's pointer to store the address of the first node, creating a circular structure.", 'The chapter discusses the creation of a circular linked list, including the representation of nodes and the declaration of pointers.', 'The provision for user interaction is highlighted, showcasing the use of a while loop to enable continuous addition of nodes based on user input, with a clear explanation of the conditions for node creation and memory allocation.', 'The transition to a circular linked list is exemplified, emphasizing the crucial step of linking the last node to the first node to complete the circular structure.', 'The chapter emphasizes the process of creating a circular linked list using pointers and conditional checks.', 'Covers printing a linked list with a loop, traversing a linked list using a while loop and node pointers, and traversing a circular linked list.']}