1.选择排序 完整代码:
<script> let str = prompt("请输入任意个整数,用逗号隔开"); let arr = str.split(','); console.log("排序前:" + arr); for (let i = 0; i < arr.length; i++) { for (let j = i; j < arr.length; j++) { if (arr[j] > arr[j + 1]) { let temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } } console.log("排序后:" + arr); </script>控制台输出: 具体分析:
首先我们用4个数来比较进行理解 例如 : 1 8 6 3 选择排序通俗地讲 就是 第一轮: 1和8比 1和6比 1和3比 第二轮 :8和6比 8比6大 所以需要交换位置 6和3比 交换位置 1 3 8 6 第三轮: 8和6比 8比6大 所以需要交换位置 1 3 6 8
先用代码演示流程:
<script for (let i = 0; i < 3; i++) { for (let j = i; j < 3; j++) { console.log(i, j + 1); } } </script>控制台输出:
表示:
第一轮: 0索引 和 1索引比 0索引 和 2索引比 0索引 和 3索引比 0索引 和 4索引比 第二轮: 1索引 和 2索引比 1索引 和 3索引比 1索引 和 4索引比 第三轮: 2索引 和 3索引比 2索引 和 4索引比 第四轮:3索引 和 4索引比
2.冒泡排序
完整代码:
<script> let str = prompt("请输入任意个个整数,用逗号隔开"); let arr = str.split(','); console.log("排序前:" + arr); for (let i = 0; i < arr.length; i++) { for (let j = 0; j < arr.length - i; j++) { if (arr[j] > arr[j + 1]) { let temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } } console.log("排序后:" + arr); </script> 控制台输出:  首先我们还是用4个数来比较进行理解 例如 : 1 8 6 3 冒泡排序通俗地讲 就是 第一轮: 1和8比 8和6比 8比6大 所以需要交换位置 8和3比 比6大 所以需要交换位置 1 6 3 8 第二轮 :6和3比 6比3大 所以需要交换位置 6和8比 1 3 6 8 第三轮: 6和8比 1 3 6 8 先用代码演示流程: ```javascript <script> for (let i = 0; i < 4; i++) { for (let j = 0; j < 4 - i; j++) { console.log(j, j + 1); } } </script>控制台输出: 第一轮: 0索引 和 1索引比 1索引 和 2索引比 2索引 和 3索引比 3索引 和 4索引比 第二轮: 0索引 和 1索引比 1索引 和 2索引比 2索引 和 3索引比 第三轮: 0索引 和 1索引比 1索引 和 2索引比 第四轮:0索引 和 1索引比