JavaScript(四)------排序

2021-06-27 08:06

阅读:667

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


评论


亲,登录后才可以留言!