data structure linked list n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Data Structure: Linked List PowerPoint Presentation
Download Presentation
Data Structure: Linked List

Loading in 2 Seconds...

play fullscreen
1 / 30

Data Structure: Linked List - PowerPoint PPT Presentation


  • 96 Views
  • Uploaded on

Data Structure: Linked List. Data Structure: Linked List. Data Structure: Linked List. Data Structure: Linked List. Data Structure: Linked List. Data Structure: Linked List. Data Structure: Linked List. Data Structure: Linked List. Data Structure: Linked List. Data Structure: Linked List.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

Data Structure: Linked List


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
    Presentation Transcript
    1. Data Structure:Linked List

    2. Data Structure:Linked List

    3. Data Structure:Linked List

    4. Data Structure:Linked List

    5. Data Structure:Linked List

    6. Data Structure:Linked List

    7. Data Structure:Linked List

    8. Data Structure:Linked List

    9. Data Structure:Linked List

    10. Data Structure:Linked List

    11. List Using Linked Memory • Various cells of memory are not allocated consecutively in memory. University Of Malakand | Department of Computer Science | Visual Computing Research Group | Dr. Engr.Sami ur Rahman | 11

    12. List Using Linked Memory • Various cells of memory are not allocated consecutively in memory. • Not enough to store the elements of the list. University Of Malakand | Department of Computer Science | Visual Computing Research Group | Dr. Engr.Sami ur Rahman | 12

    13. List Using Linked Memory • Various cells of memory are not allocated consecutively in memory. • Not enough to store the elements of the list. • With arrays, the second element was right next to the first element. University Of Malakand | Department of Computer Science | Visual Computing Research Group | Dr. Engr.Sami ur Rahman | 13

    14. List Using Linked Memory • Various cells of memory are not allocated consecutively in memory. • Not enough to store the elements of the list. • With arrays, the second element was right next to the first element. • Now the first element must explicitly tell us where to look for the second element. University Of Malakand | Department of Computer Science | Visual Computing Research Group | Dr. Engr.Sami ur Rahman | 14

    15. List Using Linked Memory • Various cells of memory are not allocated consecutively in memory. • Not enough to store the elements of the list. • With arrays, the second element was right next to the first element. • Now the first element must explicitly tell us where to look for the second element. • Do this by holding the memory address of the second element University Of Malakand | Department of Computer Science | Visual Computing Research Group | Dr. Engr.Sami ur Rahman | 15

    16. object next Linked List • Create a structure called a Node. • The object field will hold the actual list element. • The next field in the structure will hold the starting location of the next node. • Chain the nodes together to form a linked list. University Of Malakand | Department of Computer Science | Visual Computing Research Group | Dr. Engr.Sami ur Rahman | 16

    17. head 2 6 8 7 1 size=5 current Linked List • Picture of our list (2, 6, 7, 8, 1) stored as a linked list: University Of Malakand | Department of Computer Science | Visual Computing Research Group | Dr. Engr.Sami ur Rahman | 17

    18. Linked List Note some features of the list: • Need a head to point to the first node of the list. Otherwise we won’t know where the start of the list is. University Of Malakand | Department of Computer Science | Visual Computing Research Group | Dr. Engr.Sami ur Rahman | 18

    19. Linked List Note some features of the list: • Need a head to point to the first node of the list. Otherwise we won’t know where the start of the list is. • The current here is a pointer, not an index. University Of Malakand | Department of Computer Science | Visual Computing Research Group | Dr. Engr.Sami ur Rahman | 19

    20. Linked List Note some features of the list: • Need a head to point to the first node of the list. Otherwise we won’t know where the start of the list is. • The current here is a pointer, not an index. • The next field in the last node points to nothing. We will place the memory address NULL which is guaranteed to be inaccessible. University Of Malakand | Department of Computer Science | Visual Computing Research Group | Dr. Engr.Sami ur Rahman | 20

    21. 2 Linked List : Actual picture in memory: 1051 6 1052 1063 current 1053 1063 1054 2 head 1055 1051 1056 6 8 7 1 1057 7 1058 1060 current 1059 1060 1 1061 0 head 1062 1054 1063 8 1064 1057 1065 University Of Malakand | Department of Computer Science | Visual Computing Research Group | Dr. Engr.Sami ur Rahman | 21

    22. newNode 9 Linked List Operations • add(9): Create a new node in memory to hold ‘9’Node* newNode = new Node(9); University Of Malakand | Department of Computer Science | Visual Computing Research Group | Dr. Engr.Sami ur Rahman | 22

    23. head 2 newNode 9 6 8 7 1 size=5 6 current 9 newNode 2 1 3 Linked List Operations • add(9): Create a new node in memory to hold ‘9’Node* newNode = new Node(9); • Link the new node into the list University Of Malakand | Department of Computer Science | Visual Computing Research Group | Dr. Engr.Sami ur Rahman | 23

    24. C++ Code for Linked List The Node class class Node { public: int get() { return object; }; void set(int object) { this->object = object; }; Node *getNext() { return nextNode; }; void setNext(Node *nextNode) { this->nextNode = nextNode; }; private: int object; Node *nextNode; }; University Of Malakand | Department of Computer Science | Visual Computing Research Group | Dr. Engr.Sami ur Rahman | 24

    25. C++ Code for Linked List #include <stdlib.h> #include "Node.cpp" class List { public: // Constructor List() { headNode = new Node(); headNode->setNext(NULL); currentNode = NULL; size = 0; }; University Of Malakand | Department of Computer Science | Visual Computing Research Group | Dr. Engr.Sami ur Rahman | 25

    26. C++ Code for Linked List void add(intaddObject) { Node* newNode = new Node(); newNode->set(addObject); if( currentNode != NULL ){ newNode->setNext(currentNode->getNext()); currentNode->setNext(newNode); lastCurrentNode = currentNode; currentNode = newNode; } else { newNode->setNext(NULL); headNode->setNext(newNode); lastCurrentNode = headNode; currentNode = newNode; } size++; }; University Of Malakand | Department of Computer Science | Visual Computing Research Group | Dr. Engr.Sami ur Rahman | 26

    27. 7 Building a Linked List List.add(8); list.add(7); list.add(1); currentNode headNode 2 6 8 1 size=5 lastcurrentNode University Of Malakand | Department of Computer Science | Visual Computing Research Group | Dr. Engr.Sami ur Rahman | 27

    28. C++ Code for Linked List int get() { if (currentNode != NULL) return currentNode->get(); }; University Of Malakand | Department of Computer Science | Visual Computing Research Group | Dr. Engr.Sami ur Rahman | 28

    29. C++ Code for Linked List bool next() { if (currentNode == NULL) return false; lastCurrentNode = currentNode; currentNode = currentNode->getNext(); if (currentNode == NULL || size == 0) return false; else return true; }; University Of Malakand | Department of Computer Science | Visual Computing Research Group | Dr. Engr.Sami ur Rahman | 29

    30. Questions University Of Malakand | Department of Computer Science | Visual Computing Research Group | Dr. Engr.Sami ur Rahman | 30