Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 

E. Всё наоборот

Вася решил запутать маму —– делать дела в обратном порядке. Список его дел теперь хранится в двусвязном списке. Напишите функцию, которая вернёт список в обратном порядке.

Внимание: в этой задаче не нужно считывать входные данные. Нужно написать только функцию, которая принимает на вход голову двусвязного списка и возвращает голову перевёрнутого списка. Ниже дано описание структуры, которая задаёт вершину списка.

Решение надо отправлять только в виде файла с расширением, которое соответствует вашему языку. Иначе даже корректно написанное решение не пройдёт тесты.

Формат ввода

Функция принимает на вход единственный аргумент — голову двусвязного списка. Длина списка не превосходит 1000 элементов. Список не бывает пустым.

Следуйте следующим правилам при отправке решений:

  • Нужно выбирать компилятор Make.
  • Решение нужно отправлять в виде файла с расширением соответствующем вашему языку программирования.
  • Для Java файл должен называться Solution.java, для C# – Solution.cs
  • Для остальных языков программирования это имя использовать нельзя (имя «solution» тоже).
  • Для Go укажите package main.

Go:

package main

type ListNode struct {
	data     string
	next  *ListNode
	prev  *ListNode
}

func Solution(node *ListNode) *ListNode {
	//...
}

Ваша функция должна иметь сигнатуру func Solution(node *ListNode) *ListNode.

Формат вывода

Функция должна вернуть голову развернутого списка.