我正在通過冒泡排序對 30 個隨機生成的數字進行排序,由于某種原因,它們從 15 排序到 29,但它們仍然沒有從 0 到 14 排序。這就像排序由于某種原因停止一樣。我的嘗試是將 i++ 更改為 i-- 但并沒有真正起作用。有誰知道循環中出了什么問題謝謝JavaScript:arr =new Array(30);var length = arr.length;function randomNumber(min,max){ var min = Math.ceil(min); var max = Math.floor (max); for(var i = 0; i<length; i++){ arr[i] = Math.floor(Math.random() * (max-min)) + min; document.write("Number " +(i)+ " : " +arr[i] + "<br >"); } for (var i = 0; i < arr.length; i++) { for (var j = 0; j < arr.length; j++) { if (arr[j] > arr[j + 1]){ //Swap the numbers var tmp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = tmp; //Replace adjacent number with current number //[[arr[j],arr[j+1]] = [arr[j+1], arr[j]]];} } document.write("Number " +(i)+ " : " +arr[i] + "<br >"); } return arr;}HTML調用該方法: <script> randomNumber(1,1000); </script> 以下是代碼的輸出:隨機數冒泡排序
冒泡排序為什么只對我的數字進行一半排序?JS 和 HTML
開滿天機
2023-12-14 14:49:55