コード例 #1
0
 public void Remove(int item)
 {
     if (Right == null)
     {
         // Ветка, если элемент последний.
         if (Value == item)
         {
             Left.Right = null;
             Left       = null;
         }
         else
         {
             Console.WriteLine("Не было найдено элемента {0}", item);
         }
     }
     else
     {
         // Ветка, если элемент не последний
         if (Value == item)
         {
             if (Left == null)
             {
                 // Ветка, если элемент первый.
                 Right.Left.Value = Right.Value;
                 Right.Remove(Right.Value);
             }
             else
             {
                 // Ветка, если элемент не первый.
                 Right.Left = Left;
                 Left.Right = Right;
                 Right      = null;
                 Left       = null;
             }
         }
         else
         {
             Right.Remove(item); // проход по списку, отправка правого элемента
         }
     }
 }
コード例 #2
0
 public DoublyLinkedList(int value)
 {
     this.Value = value;
     Left       = null;
     Right      = null;
 }
コード例 #3
0
 private DoublyLinkedList Right; // ссылка на следующий элемент
 public DoublyLinkedList()
 {
     Value = 0;
     Left  = null;
     Right = null;
 }