
排序
文章平均质量分 78
gsub
简简单单,开心就好
展开
-
排序1 快速排序算法
经典快排思路:1.首先设定一个分界值,通过该分界值将数组分为左右两个部分。2.左边部分是小于等于分界值的数据,右边部分是大于分界值的数据。3.左边和右边递归调用方法:设定分界值,划分左边的是小于等于分界值的数据,右边是大于分界值的数据。举例:4,6,2,0,31.选取最右边的3作为分界值,划分后数组的左边部分是【2,0】,数组的右边部分是【4,6】,3是在中间位置。2.左边...原创 2019-05-08 16:20:13 · 191 阅读 · 0 评论 -
排序2 堆排序算法
1.完全二叉树的概念除了最后一层之外的其它每一层都被完全填充,并且所有的节点都保证向左对齐。2.堆的结构首先,堆结构就是一棵完全二叉树;堆分为大根堆(任何一棵子树的最大值都在头部);小根堆(任何一棵子树的最小值都在头部);3.堆排序的思路 3.1 将数组变为堆的结构(大根堆) 3.2 将堆顶数据和最后一个数据交换,输出新的最后一个数据(也就是最大值),调整剩...原创 2019-05-08 18:29:22 · 114 阅读 · 0 评论 -
排序3 桶排序之计数排序
桶排序的思路:首先找到数组a中的最大值;然后建立一个长度为最大值加1的数组;遍历a数组,如果a[i]的值为b,那么新的数组中下标为b的位置的值加1。比如:a数组是【1,2,2,4,3,2】,那么新的数组为【0,1,3,1,1】分析:新数组中o位置为0,说明a数组中没有0;1位置为1,说明a数组中有1个1;2位置为3,说明a数组有3个2;3位置为1,说明a数组中有1个3;4位置为1,说明...原创 2019-05-09 19:23:31 · 227 阅读 · 0 评论 -
排序算法
稳定性是指相等的数仍然能保证原来的相对位置1. 冒泡排序算法步骤比较相邻的元素。如果第一个比第二个大,就交换他们两个。对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大的数。针对所有的元素重复以上的步骤,最后一个元素定好了,不用进行比较了。持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。ja...原创 2019-06-11 19:41:27 · 130 阅读 · 0 评论