Я ненавижу просто публиковать вопрос о домашней работе, но у меня много проблем с тем, что они пытаются от меня спросить. Я не прошу вас решить мою домашнюю задачу, а лишь направьте меня к первым шагам, которые я должен предпринять, потому что я не знаю, с чего начать. Я прочитал часть главы, посвященную быстрой сортировке и пониманию, и посмотрел на нее видео.
Вот домашнее задание:
Сортировка массива из 10 000 элементов с использованием алгоритма быстрой сортировки следующим образом:
а. Сортируйте массив, используя pivot в качестве среднего элемента массива.
б. Сортируйте массив, используя pivot в качестве медианы первого, последнего и среднего элементов массива.
с. Сортируйте массив, используя pivot в качестве среднего элемента массива. Однако, когда размер любого подсписка уменьшается до менее 20, сортируйте подсписок, используя сортировку вставкой.
д. Сортируйте массив, используя pivot в качестве медианы первого, последнего и среднего элементов массива. Когда размер любого подсписка уменьшается до менее 20, сортируйте подсписок, используя сортировку вставкой.
е. Рассчитайте и распечатайте процессорное время для каждого из предыдущих четырех шагов.
У меня проблемы с пониманием - будет ли это одна целая функция, содержащая эти четыре шага, или четыре разные функции, каждая из которых выполняет каждый шаг? Я получаю, что это значит, шаг a при использовании pivot в качестве среднего элемента массива (скажем, у вас есть 10 элементов массива, а середина будет элементом # 4), но я не понимаю, что это значит, «сортируя массив с помощью pivot как медиана первого, последнего и среднего элементов массива "
Мне нужно разобраться во внутренних принципах быстрой сортировки и о том, что эта книга требует от меня.