コード例 #1
0
        public void PrintAllLinkedList()
        {
            HotelBookingNode current = head;

            Console.Write("Head -> ");
            while (current != null)
            {
                Console.Write($" {current.To_String()} -> ");
                current = current.Next;
            }
            Console.WriteLine("Tail");
        }
コード例 #2
0
        public void AddToEnd(HotelBooking h)
        {
            HotelBookingNode node = new HotelBookingNode(h);

            if (tail == null)
            {
                head = node;
            }
            else
            {
                tail.Next = node;
                node.Prev = tail;
            }
            tail = node;
            size++;
        }
コード例 #3
0
        public void AddToFront(HotelBooking h)
        {
            HotelBookingNode node = new HotelBookingNode(h);

            if (head == null)
            {
                tail = node;
            }
            else
            {
                head.Prev = node;
                node.Next = head;
            }
            head = node;
            size++;
        }
コード例 #4
0
        public void RemoveIndexFromEnd()
        {
            if (IsEmpty())
            {
                return;
            }
            HotelBookingNode removeNode = tail;

            if (tail.Prev == null)
            {
                head = null;
            }
            else
            {
                tail.Prev.Next = null;
            }
            tail = tail.Prev;
            size--;
            removeNode = null;
        }
コード例 #5
0
        public void RemoveIndexFromFront()
        {
            if (IsEmpty())
            {
                return;
            }
            HotelBookingNode removeNode = head;

            if (head.Next == null)
            {
                tail = null;
            }
            else
            {
                head.Next.Prev = null;
            }
            head = head.Next;
            size--;
            removeNode = null;
        }