// // This file contains the C# code from Program 7.13 of // "Data Structures and Algorithms // with Object-Oriented Design Patterns in C#" // by Bruno R. Preiss. // // Copyright (c) 2001--2002 by Bruno R. Preiss, P.Eng. All rights reserved. // // http://www.brpreiss.com/books/opus6/programs/pgm07_13.txt // public class OrderedListAsLinkedList : AbstractSearchableContainer, OrderedList { protected LinkedList linkedList; public override bool IsMember(ComparableObject obj) { for (LinkedList.Element ptr = linkedList.Head; ptr != null; ptr = ptr.Next) { if ((object)ptr.Datum == (object)obj) return true; } return false; } public override ComparableObject Find(ComparableObject arg) { for (LinkedList.Element ptr = linkedList.Head; ptr != null; ptr = ptr.Next) { ComparableObject obj = (ComparableObject)ptr.Datum; if (obj == arg) return obj; } return null; } // ... }