冒泡排序和插入排序

文章介绍了两种简单的排序算法——冒泡排序和插入排序。冒泡排序通过不断比较相邻元素并交换位置进行排序,而插入排序则通过构建有序数组并在无序数组中找到合适位置插入元素来排序。文中提供了具体的JavaScript代码示例来展示这两种排序过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        冒泡排序是一种非常容易理解的排序算法。在冒泡排序的过程中,按照要求从小到大排序或从大到小排序,不断比较数组中相邻两个元素的值,较小或较大的元素前移。例子如下所示。

var arr = [10,7,5,27,98,31];

for(var i =1;i<arr.length;i++){                //控制需要比较的轮数

        for(var j = 0;j<arr.length-i;j++){     //控制参与比较的元素

               if(arr[j]>arr[j+1]){                   //比较相邻的两个元素

                var temp = arr[j+1];

                arr[j+1]=arr[j];

                arr[j] = temp;

                }

        }

}

console.log(arr);        //输出结果:5,7,10,27,31,98


 

        插入排序是冒泡排序的优化,是一种直观的简单排序算法。它的实现原理是,通过构建有序数组元素的储存,对无排序的数组元素,在已排序的数组中从最后一个元素向第一个元素遍历,找到相应位置并插入。其中,待排序数组的第一个元素会被看作是一个有序的数组。从第二个至最后一个元素会被看作是一个无序数组。例子如下所示。

var arr = [10,8,100,31,87,70,1,88];

//按照从小到大的顺序排列,先遍历无序数组下标

for(var i =1;i<arr.length;i++){         

//遍历并比较一个无序数组元素与所有有序数组元素

        for(var j = 1; j>0 ; j--){   

               if(arr[j-1]>arr[j]){              

                var temp = arr[j-1];

                arr[j-1]=arr[j];

                arr[j] = temp;

                }

        }

}

console.log(arr);                //输出结果:1,8,10,31,70,87,88,100

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值