Алгоритм поиска и сортировки JavaScript: сортировка шейкер
Алгоритм поиска и сортировки JavaScript: упражнение-8 с решением
Напишите программу на JavaScript для сортировки списка элементов, используя сортировку Cocktail shaker.
Коктейльный шейкер (также известный как двунаправленная пузырьковая сортировка, коктейльная сортировка, шейкерная сортировка, пульсация, случайная сортировка или челночная сортировка) - это разновидность пузырьковой сортировки, которая является одновременно алгоритмом стабильной сортировки и сравнительной сортировкой. Алгоритм отличается от пузырьковой сортировки тем, что он сортирует в обоих направлениях при каждом проходе по списку. Этот алгоритм сортировки лишь немного сложнее в реализации, чем пузырьковая сортировка, и он решает проблему черепах в пузырьковых видах. Он обеспечивает лишь незначительные улучшения производительности и не улучшает асимптотическую производительность; Подобно пузырьковому типу, он не представляет практического интереса, хотя и находит свое применение в образовании.
Визуализация типа шейкера :
Пример решения: -
HTML-код:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>JavaScript program of Cocktail sort</title>
</head>
<body></body>
</html>
Код JavaScript:
let nums = [4, 9, 0, 3, 1, 5];
console.log("Original array:");
console.log(nums);
let is_Sorted = true;
while (is_Sorted){
for (let i = 0; i< nums.length - 1; i++){
if (nums[i] > nums[i + 1])
{
let temp = nums[i];
nums[i] = nums[i + 1];
nums[i+1] = temp;
is_Sorted = true;
}
}
if (!is_Sorted)
break;
is_Sorted = false;
for (let j = nums.length - 1; j > 0; j--){
if (nums[j-1] > nums[j])
{
let temp = nums[j];
nums[j] = nums[j - 1];
nums[j - 1] = temp;
is_Sorted = true;
}
}
}
console.log("Sorted array:")
console.log(nums);
Пример вывода:
Исходный массив: [4,9,0,3,1,5] Сортированный массив: [0,1,3,4,5,9]
Блок - схема:
Демонстрация в реальном времени:
См. Поиск и сортировка-алгоритм-упражнение-8 для Pen по w3resource ( @ w3resource ) в CodePen .
Внесите свой код и комментарии через Disqus.
Предыдущий: Напишите программу на JavaScript для сортировки списка элементов с использованием Bubble sort.
Далее: Напишите программу JavaScript для сортировки списка элементов с использованием Comb sort.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования