Presentation is loading. Please wait.

Presentation is loading. Please wait.

CS 302 Data Structures Linked Lists.

Similar presentations


Presentation on theme: "CS 302 Data Structures Linked Lists."— Presentation transcript:

1 CS 302 Data Structures Linked Lists

2 Preliminaries A Node: Several nodes linked together

3 Preliminaries A head pointer to the first node

4 Time for some code: // Programming exercise 2
template <typename DataType> class List { public: List(int ignored = 0); List(const List& other); List& operator=(const List& other); ~List(); void insert(const DataType& newDataItem) throw (logic_error); void remove() throw (logic_error); void replace(const DataType& newDataItem) void clear(); bool isEmpty() const; bool isFull() const; void gotoBeginning() throw (logic_error); void gotoEnd() throw (logic_error); bool gotoNext() throw (logic_error); bool gotoPrior() throw (logic_error); DataType getCursor() const throw (logic_error); // Programming exercise 2 void moveToBeginning () throw (logic_error); // Programming exercise 3 void insertBefore(const DataType& newDataItem) void showStructure() const; private: class ListNode { public: ListNode(const DataType& nodeData, ListNode* nextPtr); DataType dataItem; ListNode* next; }; ListNode* head; ListNode* cursor;

5 Now to write some …. Constructor Destructor operator= …
Shallow Copy vs Deep Copy

6 End of Chapter 4


Download ppt "CS 302 Data Structures Linked Lists."

Similar presentations


Ads by Google