![Page 1: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/1.jpg)
Chapter 8
Lists
![Page 2: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/2.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2
Chapter Objectives
• Examine list processing and various ordering techniques
• Define a list abstract data type
• Demonstrate how a list can be used to solve problems
• Examine various list implementations
• Compare list implementations
![Page 3: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/3.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-3
Lists• Lists are linear collections, like stacks and
queues, but are more flexible
• Adding and removing elements in lists are not restricted by the collection structure
• That is, they don't have to operate on one end or the other
• We will examine three types of list collections:– ordered lists
– unordered lists
– indexed lists
![Page 4: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/4.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-4
Ordered Lists
• The elements in an ordered list are ordered by some inherent characteristic of the elements– names in alphabetical order
– scores in ascending order
• Therefore, the elements themselves determine where they are stored in the list
![Page 5: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/5.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-5
FIGURE 8.1 A conceptual view of an ordered list
![Page 6: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/6.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-6
Unordered Lists
• There is an order to the elements in an unordered list, but that order is not based on element characteristics
• The user of the list determines the order of the elements
• A new element can be put on the front or the rear of the list, or it can be inserted after a particular element already in the list
![Page 7: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/7.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-7
FIGURE 8.2 A conceptual view of an unordered list
![Page 8: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/8.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-8
Indexed Lists
• In an indexed list, elements are referenced by their numeric position in the list
• Like an unordered list, there is no inherent relationship among the elements
• The user can determine the order
• Every time the list changes, the indexes are updated
![Page 9: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/9.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-9
FIGURE 8.3 A conceptual view of an indexed list
![Page 10: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/10.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-10
List Operations
• There are several operations common to all three list types
• These include removing elements in various ways and checking the status of the list
• The key differences between the list types involve the way elements are added
![Page 11: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/11.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-11
FIGURE 8.4 The common operations on a list
![Page 12: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/12.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-12
FIGURE 8.5 The operation particular to an ordered list
![Page 13: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/13.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-13
FIGURE 8.6 The operations particular to an unordered list
![Page 14: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/14.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-14
FIGURE 8.7 The operations particular to an indexed list
![Page 15: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/15.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-15
List Operations
• As with other collections, we use Java interfaces to define the collection operations
• Recall that interfaces can be defined via inheritance (derived from other interfaces)
• We define the common list operations in one interface, then derive three others from it that define the interfaces of the three list types
![Page 16: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/16.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-16
FIGURE 8.8 The various list interfaces
![Page 17: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/17.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-17
Listing 8.1
![Page 18: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/18.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-18
Listing 8.1 (cont.)
![Page 19: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/19.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-19
Listing 8.2
![Page 20: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/20.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-20
Listing 8.3
![Page 21: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/21.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-21
Listing 8.4
![Page 22: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/22.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-22
Listing 8.4 (cont.)
![Page 23: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/23.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-23
Tournament Maker
• Let's use an ordered list to help manage a bowling tournament
• Teams are ordered by their number of wins in the regular season
• To create the first round match-ups, the team with the best record is matched against the team with the worst record
• The second best team is matched against the second worst team, etc.
![Page 24: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/24.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-24
FIGURE 8.9 Bowling league team names and number of wins
![Page 25: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/25.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-25
FIGURE 8.10 Sample tournament layout for a bowling league tournament
![Page 26: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/26.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-26
Tournament Maker
• A class that represents a team will be Comparable, based on their number of wins
![Page 27: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/27.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-27
Listing 8.5
![Page 28: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/28.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-28
Listing 8.6
![Page 29: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/29.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-29
Listing 8.6 (cont.)
![Page 30: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/30.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-30
Listing 8.6 (cont.)
![Page 31: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/31.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-31
Listing 8.7
![Page 32: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/32.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-32
Listing 8.7 (cont.)
![Page 33: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/33.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-33
Listing 8.7 (cont.)
![Page 34: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/34.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-34
Listing 8.7 (cont.)
![Page 35: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/35.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-35
FIGURE 8.11 UML description of the Tournament class
![Page 36: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/36.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-36
The Josephus Problem
• In a Josephus problem, a set of elements are arranged in a circle
• Starting with a particular element, every ith element is removed
• Processing continues until there is only one element left
• The question: given the starting point and remove count (i), which element is left?
![Page 37: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/37.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-37
Listing 8.8
![Page 38: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/38.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-38
Listing 8.8 (cont.)
![Page 39: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/39.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-39
Listing 8.8 (cont.)
![Page 40: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/40.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-40
FIGURE 8.12 UML description of the Josephus program
![Page 41: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/41.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-41
Implementing Lists with Arrays• An array implementation of a list could follow
strategies similar to those used for a queue
• We could fix one end of the list at index 0 and shift as needed when an element is added or removed
• Or we could use a circular array to avoid the shift at one end
• However, there is no avoiding a shift when an element in the middle is added or removed
• Let's examine the fixed version
![Page 42: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/42.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-42
FIGURE 8.13 An array implementation of a list
![Page 43: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/43.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-43
ArrayList - the remove Operation
![Page 44: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/44.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-44
ArrayList - the find Operation
![Page 45: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/45.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-45
ArrayList - the contains Operation
![Page 46: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/46.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-46
ArrayOrderedList - the add Operation
![Page 47: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/47.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-47
Implementing lists with links
• As with stack and queue, we can implement a list collection with an underlying linked list
• All operations can be accomplished using techniques similar to ones we've already explored
• However, let's examine the remove operation with this traditional approach, then alter the underlying representation for comparison
![Page 48: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/48.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-48
LinkedList - the remove Operation
![Page 49: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/49.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-49
LinkedList - the remove Operation
![Page 50: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/50.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-50
LinkedList - the remove Operation
![Page 51: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/51.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-51
Doubly Linked Lists
• A doubly linked list has two references in each node, one to the next element in the list and one to the previous element
• This makes moving back and forth in a list easier, and eliminates the need for a previous reference in particular algorithms
• There is, however, a bit more overhead when managing the list
![Page 52: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/52.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-52
Listing 8.9
![Page 53: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/53.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-53
Listing 8.9 (cont.)
![Page 54: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/54.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-54
Listing 8.9 (cont.)
![Page 55: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/55.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-55
Listing 8.9 (cont.)
![Page 56: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/56.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-56
FIGURE 8.14 A doubly linked list
![Page 57: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/57.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-57
Doubly Linked Lists
• Lets revisit the remove method for linked implementation of a list, this time using a doubly linked list
• Notice how much more elegant the code in this version is compared to our earlier version
• The cost of this elegance is the overhead associated with storing and managing additional links
![Page 58: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/58.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-58
DoubleList - the remove Operation
![Page 59: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/59.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-59
DoubleList - the remove Operation
![Page 60: Chapter 8 Lists. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-2 Chapter Objectives Examine list processing and various ordering techniques](https://reader030.vdocument.in/reader030/viewer/2022033022/56649d6b5503460f94a4a2b1/html5/thumbnails/60.jpg)
Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 8-60
Analysis of List Implementations
• In both array and linked implementations, many operations are similar in efficiency
• Most are O(1), except when shifting or searching need to occur, in which case they are order O(n)
• In particular situations, the frequency of the need for particular operations may guide the use of one approach over another