PHP: Алгоритмы
Базовый курс по алгоритмам и структурам данных с практикой на php. Рассматриваются сложность алгоритмов, сортировка и графы.
ВНИМАНИЕ! Этот курс устарел. Но ничего страшного, мы затрагиваем множество алгоритмов в серии курсов и практических упражнениях профессии PHP-программист.
Уроки курса
-
2
Пример простого алгоритма
Изучить структуру простого алгоритма для умножения двух чисел с помощью сложения.тесты
-
4
Разделяй и властвуй
Изучить идею разделения задачи на составные части на примере алгоритма Merge sort.тесты
-
5
Сложность алгоритмов и Big O
Понять идею оценки вычислительной сложности и классификации алгоритмов с помощью Big O, Big Omega и Big Theta.тесты
-
7
Структуры данных
Изучить и сравнить массив, ассоциативный список, хеш-таблицу и связный список.тесты
-
8
Деревья и двоичные деревья
Изучить деревья, двоичные деревья, сбалансированные деревья, Red Black Tree и их вычислительную сложность.тесты
Автор
Программист, ранее — преподаватель в международном ИТ-университете (г. Алматы), разработчик (Ericsson Canada, Macadamian). Сооснователь Хекслета.
Впечатления
Долго пытался решить по фэн-шую, применяя рекурсивный вызов ф-ции. В рез-те получилось только "внешний" перебор массива выполнить так (отправил на ревью). Как в подобных задачах (с сортировкой массива) обойтись без применения состояний и "лишней" переменной для смены местами эл-тов? Пытался включить эл-ты массива в список параметров ф-ции, а потом менять их местами при передачи аргументов, но не получилось. Кстати, когда увидел решение учителя, - первый раз не испытал чувство: "о, как изящно!" ;)