Урок 9. Алгоритмы и структуры данных. Решение задач. Часть 1
Дата публикации: 23-04-2020

От автора: последние четыре урока данного цикла будут исключительно практическими и здесь будет показано решение задач с собеседований. На собеседованиях, как правило, кроме общих вопросов, позволяющих дать представление о знании языка, даются и практические задания. Часто это решение задач. При этом практически всегда это будут задачи, имеющие некоторые нюансы, которые позволят понять, насколько вы можете их видеть и понимать.
В этом уроке будет одна из таких задач, где важно не просто ее решить, но также и учесть в решении ряд нюансов, позволяющих оптимизировать решение.
Все уроки курса:
Метки: алгоритмы
Андрей, добрый день
А не проще в данной задаче использовать в функции (при условии, что $cnt больше длины массива) остаток от деления количества перестановок на длину массива ($cnt%count($data)) , и уже этот остаток использовать как условие для цикла?
Ведь если задано большое кол-во перестановок, например 83 при длине массива 5, в вашем примере мы будем делать 78 перестановок, а в случае использования остатка от деления только 3…
Добрый день, Сергей.
Я как-то не учел, что настолько большое число перестановок может быть передано параметром.
Браво! И проще, и правильнее
Отлично, рад что удалось помочь оптимизировать код)))