 Hello friends, I am Sanjay Gupta. I welcome you all since you've been to Tech School. In this video, I'm going to explain the difference between signal input and W input. So I will be explaining the differences with the help of a diagram as well as I will be writing the C structure so that you can understand the difference like how the data actually works. So the first time I'm going to draw the diagram for a serious idea. So whenever we create a signal input, so first we need to create a start filter which contains null. Right now, if I want to add a load into this link just so this is no number one. It is in the middle divided into two parts. So first one is information and second is a pointer that we will address up next. And let's say its address is 1001 so it will just go into start. Right? So this way it is connected. Now if we have one unit, so it is also in two parts equal next and let's say base address is 2001. Then we have no number T and its base address is 3001. So 1000 that is stored here, value is 10 that is in both and no one next pointer which is going base address of node two. So it will be having value as 2001. Now let's say its information is 20 and its next part will be base address of next node. Now this is current node, its information is 30 and it is not having any further loop so its next will be value. So this is where it will not be getting this and if I create structure of C structure for this, so I need to write some limit list then in info. So this is for this possible value and then structure limit list pointer list. So this is the structure that you need to declare in sheet address if you are going to write a program for this. And this structure is basically has self definition structure. Why so? Because here you can see structure is using its own data type to create a pointer list. Why so? Because this pointer is holding address of this node and this node is type of struct limit list. So whenever we need a pointer, so pointer holds address of a memory location. So we need to declare pointer of that type similar to the type of memory location. So this memory location is having type as struct limit list. So we need to declare this pointer as same type. So here you can see this is a pointer and its name tag is struct limit list. So this may single list memory map is inside of you, which is internally connected with different address. And this may be created on a structure if you want to implement this on program in CL. Now I am coming to W limit list. So in case of similar interest, what we can do? We can try to smooth left to right only. If we are on healthy, so we cannot backtrack to what we work at. But that can be done with couple of examples. So now when this page is in W limit list, I am going to add. Initially it does not. Now right in this table first value. So I need to create a node. So now the node which will be created will be having three parts. This first part will be, sorry, second part will be input. It is pointed to, yes, it is pointed to point. And let's say this is node number one. It's base address is 1001. So it will be stored here. And now, if you want to store any information, so that's going to go here, or you can specify any one thing. You want to store information for that previous one. That totally depends on the statement that we are going to write in your structure. Now let me declare one more node. So this is node two. Let's say it's base address is 2001. This is node three. It's base address is 3001. And each node will be divided into three parts. Now let's assign the values. So let's assign value for 10, 20 and 20. Right. This is previous. So this node is the first one. So it's previous and not possible. So it will be now. This node is the last one. So it's forward into possible. So it will be now. Now this is first node. So it's base address is available in this part. It's forward will be having base address of node two. So 2100 is stored here. This is node two and its previous node is node one. So node one base address will be available in the previous point of this node two. So it will be having 1000. Then node two or what is node three? So it's base address 3001 will be stored here. And node three, previous is node two. So node two base address is 2001. So now if you are, if you are on node one, so you can move to node one. If you are on node three, so node three, we just pointed having its previous node address. So you can move from node three to node two to node one. So you can move in both the direction either left or right or right to left. That's why it is called as WS. Right? And now they are connected by direction and they are connected in the real direction. So this way you can create a couple of ideas. Now if you want to create a structure. So what you can do, you can write in more or if you want to look at memory in this way, it will be like first, previous, then it will go in that form. So this is an example before that you can write stuck, linked list, pointer, previous and here you can write pointer problem. So this way the logs will be created where you can create any variable or any problem. So this way we can create a structure for self-referencing structure for building this. So I hope now you understood what it is. And also you can consider it as advantages of WS like we can move in both the directions. Now we have one more thing that has two ways in this. Two ways in this. So we can have one more pointer. So this is start pointer. We can have one more pointer that will be hand pointer. And it will be having address of last name. So what happens? Now if you want to print the rivers of linked list. So you can use this last one address with the hand pointer and use it back then. So this type of linked list basically has two main address which has two pointers. One for start and pointer. So if you have a particular address, let's say if you have a start pointer and you have address one, two, one, two, one, two, one, two, one, two, one, two, one, two, one. If you have another pointer and that is having address of last name. So with this help, with the help of this pointer you can do start writing. So you can move in both directions. So these kind of linked list are linked list. So through this minor change you can convert your address into two main address. So these are more or less similar because we just need to create one more pointer so that we can implement two main linked list type of linked list. So whenever you will be implementing your programs based on the main list so that you can have end pointer as well so that you will be having two addresses. One pointer is having address of last name and another pointer is having address of last name. So that you can efficiently manage your company. So this way I hope you are responsible for this particular company linked list. And if you want to watch like how we can write algorithm for insertion and deletion, so you can go to description of this video. You will be having links of playlist related to data structure and algorithm. So follow that playlist and you will find all the videos related to data structures and algorithm on that playlist will watch the videos which are available here so that you can learn data structure and algorithm. Thank you for watching this video.