Я сортирую свой массив с помощью сортировки выбором, но она не работает должным образом.
Он возвращает массив вроде 2, 3, 4, 17, 6, 8, 9, 11, 13.
Итак, я написал выборку алгоритм сортировки неверный? Это работает нормально в другом случае, но не здесь.
<body>
<button onclick="func()">Click</button>
</body>
<script>
var arr = [4, 3, 11, 9, 18, 13, 6, 2];
var counter = 0;
function showarray() {
for (var i = 0; i < arr.length; i++) {
var divSort = document.createElement("div");
divSort.style.width = 30 + "px";
divSort.style.height = 30 + "px";
divSort.style.background = "yellow";
divSort.style.display = "inline-block";
divSort.style.margin = "10px";
divSort.id = arr[i];
divSort.innerHTML = arr[i];
document.body.appendChild(divSort);
}
}
showarray();
function func() {
for (var j = 0; j < arr.length-1; j++) {
var min=j;
for (var i = j+1; i < (arr.length); i++) {
if (arr[min] > arr[i]) {
min=i;
}
}
swap(min, j);
}
}
function swap(smaller, bigger) {
var tmpBigger = arr[bigger];
var tmpSmaller = arr[smaller];
arr[bigger] = tmpSmaller
arr[smaller] = tmpBigger;
setTimeout(function() {
$("#" + tmpSmaller).insertBefore("#" + tmpBigger);
}, ++counter * 2000);
}
swap
функция? - person Oleksandr T.   schedule 25.10.2015