JavaScript(四)------排序
2021-06-27 08:06
YPE html>
标签:charset 保存 建立 选择 快速 分配 push 空间 交换
快速排序
1、在数组中找到基准点,其他数与之比较
2、建立两个空数组,小于基准点的数存储在左边数组,大于基准点的数存储在右边数组
3、拼接数组,即将左边数组、基准点、右边数组拼接起来,拼接的同时左边数组与右边数组继续执行1、2两个步骤,直到最后完成数组的最终排序
特点:快速,常用。
缺点:需要声明两个数组,浪费了内存空间
快速排序
冒泡排序
冒泡排序思想:每一次对比相邻两个数据的大小,小的拍在前面,如果前面的数据比后面的大就交换这两个数的位置
要实现上述规则需要用到两层for循环,外层从第一个数到倒数第二个数,内层从外层的后面一个数到最后一个数
特点:简单、实用、易于理解
缺点:比较次数多,效率低
冒泡排序
插入排序
插入排序的基本操作是将一个记录插入到已经排好序的有序表中,从而得到一个新的、记录数增1的有序表
排序过程大致如下:
1、从第一个元素开始,该元素可以认为已经被排序;
2、取出下一个元素,在已经排序的元素序列中从后向前扫描;
3、如果该元素(已排序)大于新元素,将该元素移到下一位置;
4、重复步骤3,直到找到已排序的元素小于或等于新元素的位置;
5、将新元素插入到该位置后;
6、重复步骤2~5。
插入排序
选择排序
原理:首先从原始数组中找到最小的元素,并把该元素放在数组的最前面,然后再从剩下的元素中寻找最小的元素,放在之前最小元素的后面,直到排序完毕。
选择排序
JavaScript(四)------排序
标签:charset 保存 建立 选择 快速 分配 push 空间 交换
原文地址:https://www.cnblogs.com/wsjyztx123/p/9647945.html