data structures using enter the data enter the data- circular linked list created enter your option enter your option enter your option enter your option doubly linked lists doubly linked list or two-way linked list is more complex type of linked list which contains pointer to the next as well as the previous node in the sequence thereforeit consists of three parts--dataa pointer to the next nodeand pointer to the previous node as shown in fig start figure doubly linked list in cthe structure of doubly linked list can be given asstruct node struct node *prevint datastruct node *next}start the prev field of the first node and the next field of the last node will contain null the prev field is used to store the address of the preceding nodewhich enables us to traverse the list in the backward direction thuswe see that doubly linked list calls for more space per node and more expensive basic operations howevera doubly linked list provides the ease to manipulate the elements of the list as it maintains pointers to nodes in both the directions (forward and backwardthe main advantage of using doubly linked list is that it makes searching twice as efficient let us view how doubly linked list is maintained in the memory consider fig in the figurewe see that variable start is used to store the address of the first node in this examplestart so the first data is stored at address which is since this is the first nodeit has no previous node and hence prev data next stores null or - in the prev field we will traverse the list until - we reach position where the next entry contains - or null this denotes the end of the linked list when we traverse the data and next in this mannerwe will finally see that the linked list in the above example stores characters that when put together form the word hello - figure memory representation of doubly linked list inserting new node in doubly linked list in this sectionwe will discuss how new node is added into an already existing doubly linked list we will take four cases and then see how insertion is done in each case case the new node is inserted at the beginning