кодесурса
«JavaScript

Алгоритм поиска и сортировки JavaScript: Bogosort

script1adsense2code
script1adsense3code

Алгоритм поиска и сортировки JavaScript: упражнение 14 с решением

Напишите программу на JavaScript для сортировки списка элементов с использованием Bogosort.

В информатике bogosort - это особенно неэффективный алгоритм сортировки, основанный на парадигме генерации и тестирования. Алгоритм последовательно генерирует перестановки своего ввода, пока не найдет отсортированный. Это не полезно для сортировки, но может использоваться в образовательных целях, чтобы противопоставить его другим более реалистичным алгоритмам.

Пример решения: -

HTML-код:

<!DOCTYPE html>
  <html>
  <head>
  <meta charset="utf-8">
  <title>JavaScript program of Bogosort</title>
  </head>
  <body></body>
</html>

Код JavaScript:

function Bogosort(arr){
    var isSorted = function(arr){
        for(var i = 1; i < arr.length; i++){
            if (arr[i-1] > arr[i]) {
                return false;
            }
        }
        return true;
    };
    function shuffle(arr){
        var count = arr.length, temp, index;
        while(count > 0){
            index = Math.floor(Math.random() * count);
            count--;
            temp = arr[count];
            arr[count] = arr[index];
            arr[index] = temp;
        }
        return arr;
    }
   function sort(arr){
        var sorted = false;
        while(!sorted){
            arr = shuffle(arr);
            sorted = isSorted(arr);
        }
        return arr;
    }
    return sort(arr);
}
var arra = [3, 0, 2, 5, -1, 4, 1]; 
console.log("Original Array Elements"); 
console.log(arra); 
console.log("Sorted Array Elements"); 
console.log(Bogosort(arra));

Пример вывода:

 Оригинальные элементы массива
[3,0,2,5, -1,4,1]
Сортированные элементы массива
[-1,0,1,2,3,4,5]

Блок - схема:

«JavaScript

Демонстрация в реальном времени:

См. Алгоритм поиска-сортировки-упражнения-14 Pen от w3resource ( @ w3resource ) в CodePen .


Улучшите этот пример решения и опубликуйте свой код через Disqus

Предыдущий: Напишите программу на JavaScript для сортировки списка элементов, используя сортировку по маслу.

Каков уровень сложности этого упражнения?

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code