![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
唐哈哈哈哈哈
数据结构,算法,android,java,Unity3D
展开
-
简单的说明一下三种排序,选择排序,插入排序,希尔排序
1:选择排序1:找到数组中最小的元素与元素的第一个元素交换位置,在剩下的元素中找到最小的元素与第二个元素交换。循环下去效率只和数组的大小有关2:插入排序1:打牌时候没摸一张牌就把它放在 它应有的位置上,排摸完时排序也就完成了效率和数组是否接近有序 有关3:希尔排序1:对数组以一个步长间隔,区分为几个小的数组进行插入排序,步长依次递减,最后进行一个插入排序这样一组数[ 13 14 94 33 82 ...原创 2017-03-08 22:11:08 · 206 阅读 · 0 评论 -
归并算法
1:原地归并非原地的归并排序:创建一个适当大小的数组,然后将两个输入数组中的元素一个个从小到大依次放入数组中。(缺点创建非常多的数组,这回引发一些问题?内存的占用)小规模的插入排序或选择排序 可以增加 大数据归并的效率。2:自顶而下的归并排序将数组划分为 最小为1的数组,两两归并,依次向上合并为最后的数组。(提出分治思想,与递归)原创 2017-03-09 20:13:17 · 157 阅读 · 0 评论 -
快速排序 (图片系网络查找)
切分在待排序的数组中,找到一个 标记元素可以是第一个(也可以简单的比较前几个元素的中间值,这样的取值在很多时候能够提高效率)1:维护两个指针,第一个从左向右找到比他更大的值停止,第二个从右向左找到比他更小值停止(如果有找不到情况说明标记的元素是最大的一个,我们必须处理它)如果两个指针没有相遇,我们交换两个指针对应的元素,重复以上步骤,直到两个指针相遇,把标记元素插入重叠指针原创 2017-03-09 21:33:29 · 196 阅读 · 0 评论