
排序算法
算法小猪
unknow.
展开
-
排序算法笔记3——快速排序
快速排序冒泡排序的移动次数较多,算法性能较差,而快速排序是一种高性能的排序算法。一、基本思想通过一次排序将要排序的数据分割成独立的两部分,其中一部分的所有数据比另一部分都要小,然后重复以上操作直到其变为有序序列。整个算法可以由递归进行。第一步:分解先从数据中选取一个元素作为基准元素(mid),以基准元素为标准,将序列分解为两个子序列。使小于或等于基准元素的元素在基准元...原创 2020-04-11 14:43:19 · 270 阅读 · 0 评论 -
排序算法笔记4——简单选择排序
选择排序冒泡排序是通过两两比较并交换每次冒出一个最大的“泡泡”放在最后,而选择排序则是从待排序序列中选择一个最小的元素放在前面,只不过找最小元素的方法不同,选择排序包括简单选择排序和堆排序一、简单选择排序算法步骤1.首先从arr[1..n]数组中选择一个最小的元素arr[k],arr[k]与arr[1]交换2.第二趟排序,从r[2..n]中选择一个关键字最小的元素与r[2]交换...原创 2020-04-16 17:12:33 · 238 阅读 · 0 评论 -
排序算法笔记1——直接插入排序
一、算法步骤(大体框架)1).设待排序的记录存储在array[1...n]中,可以把第一个记录array[1]看作一个有序序列2).依次将array[i=2,...,n]寻找合适的插入点(枚举搞定)插入已经排好序的序列array[1...i-1]中二、举个肥肠简单的栗子例如利用直接插入排序对序列{12,2,16,}进行排序1).初始状态——把array[1]看作一个有序序列...原创 2020-02-20 21:44:04 · 303 阅读 · 0 评论 -
排序算法笔记2——冒泡排序
一、啥是交换排序?顾名思义,交换排序就是根据两个关键字值的比较结果,不满足次序要求时交换。冒泡排序和快速排序是典型的交换排序算法。其中快速排序是目前最快的排序算法二、啥是冒泡排序?冒泡排序是一种最简单的交换排序算法,通过两两比较,逆序交换,使关键字大的像泡泡一样冒出来放在尾部。重复执行冒泡排序,最终得到有序序列。算法步骤1).待排序的元素存储在arr[1...n]中,首先第一个...原创 2020-04-04 15:16:48 · 672 阅读 · 0 评论