Php: Трансформер

PHP: Деревья 4 сообщения
Обновлено: 04 нояб., 23:20
49
Студентов
79%
Завершения

Перед прохождением данного испытания рекомендуется пройти и проанализировать решение учителя в испытании "Построение маршрута".

src/transformer.php

Реализуйте функцию transform(), которая строит дерево относительно заданного корневого узла.

Функция принимает 2 аргумента:

  • исходное дерево
  • узел, от которого будет построено новое дерево

Функция должна возвращать новое дерево с сохранёнными связями между узлами, в котором переданный узел является корневым.

Примеры

<?php

$tree = ['A', [      //     A
  ['B', [            //    / \
    ['D'],           //   B   C
  ]],                //  /   / \
  ['C', [            // D   E   F
    ['E'],
    ['F'],
  ]],
]];

transform($tree, 'B');

// ['B', [           //   B
//   ['D'],          //  / \
//   ['A', [         // D   A
//     ['C', [       //      \
//       ['E'],      //       C
//       ['F'],      //      / \
//     ]],           //     E   F
//   ]],
// ]];

Другие примеры можно посмотреть в файле с тестами.

Подсказки

Для полного доступа к испытанию нужен базовый план

Базовый план откроет полный доступ ко всем курсам, упражнениям и урокам Хекслета, проектам и пожизненный доступ к теории пройденных уроков. Подписку можно отменить в любой момент.

Получить доступ
900
упражнений
2000+
часов теории
3200
тестов