Рекурсивное преобразование односвязного списка в список целых чиселPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Рекурсивное преобразование односвязного списка в список целых чисел

Сообщение Anonymous »

Я пытаюсь рекурсивно превратить односвязный список в список целых чисел. Я попытался написать функцию, но она не работает так, как я предполагал.
Функция должна принимать список типа Node(1, Node(2, None)) и возвращать список целых чисел, например [1, 2].
Я попытался написать приведенную ниже функцию, но на выходе получаю [1]. Я не уверен, в чем я ошибаюсь, поскольку я новичок в рекурсии.

Код: Выделить всё

def linked(items: Optional[Cell]) -> List[int]:
if items is None:
return None
elif items.next is not None:
list_int = []
list_int.append(items.data)
linked(items.next)
return list_int
Вот определение класса Cell:

Код: Выделить всё

class Cell:
data: int
next: Optional[Cell]

def __init__(self, data: int, next: Optional[Cell]):
"""Constructs a singly linked list."""
self.data = data
self.next = next
***отредактировано, чтобы сделать его более целенаправленным и понятным.

Подробнее здесь: https://stackoverflow.com/questions/649 ... ecursively
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»