コード例 #1
0
        public void InsertCell(ObjectCell afterCell, ObjectCell newCell)
        {
            newCell.Next   = afterCell.Next;
            afterCell.Next = newCell;

            newCell.Next.Previous = newCell;
            newCell.Previous      = afterCell;
        }
コード例 #2
0
        public void IterateFromEnd()
        {
            ObjectCell end = End;

            while (end != null)
            {
                Console.WriteLine(end.Value);
                end = end.Previous;
            }
        }
コード例 #3
0
        public void IterateFromTop()
        {
            ObjectCell top = Top;

            while (top != null)
            {
                Console.WriteLine(top.Value);
                top = top.Next;
            }
        }
コード例 #4
0
        public DoublyLinkedList()
        {
            Top = new ObjectCell(null);
            End = new ObjectCell(null);

            End.Next     = null;
            End.Previous = Top;
            Top.Next     = End;
            Top.Previous = null;
        }
コード例 #5
0
 public void AddCellAtEnd(ObjectCell newCell)
 {
     InsertCell(End.Previous, newCell);
 }
コード例 #6
0
 public void AddCellAtStart(ObjectCell newCell)
 {
     InsertCell(Top, newCell);
 }