НачатьНачать бесплатно

Вставка узла в начало связного списка

В предыдущем упражнении вы научились реализовывать классы Node() и LinkedList().

В этом упражнении вы подготовите код для метода insert_at_beginning(), который добавляет новый узел в начало связного списка.

Вспомните класс Node():

class Node:
  def __init__(self, data):
    self.data = data
    self.next = None

Это упражнение является частью курса

Структуры данных и алгоритмы на Python

Посмотреть курс

Инструкции к упражнению

  • Создайте новый узел.
  • Проверьте, есть ли у связного списка узел head.
  • Если узел head существует, направьте атрибут next нового узла на head.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

def insert_at_beginning(self, data):
    # Create the new node
    new_node = ____(data)
    # Check whether the linked list has a head node
    if self.____:
      # Point the next node of the new node to the head
      new_node.___ = self.____
      self.head = new_node
    else:
      self.tail = new_node      
      self.head = new_node
Редактировать и запускать код