1.快速排序 基本实现方法:经过一次排序算法之后,先简单的将数据分为两部分,取一个中间数(一般为第一个元素)以这个中间数为中心,左边的数为比这个数小的数,右边的数为比这个数大的数。 之后再进行递归算法,分别处理已经分好的以中间数为分界的左右两堆数据。直到找到我们想要的排好序的数组。 基本方法步骤:1 ...
分类:
编程语言 时间:
2019-04-09 16:41:42
阅读次数:
143
算法4 1.排序 选择排序: 每次获取最大的数,交换位置 插入排序: 把数字插入有序数组中 希尔排序: 有间隔并且间隔递减的 归并排序: 归并: 两个有序数组的合并成新的有序数组 ... ...
分类:
编程语言 时间:
2019-04-01 10:25:48
阅读次数:
135
排序算法总结: 快速排序算法: 是基于分治的算法,关键在于划分操作; 性能分析: 堆排序: 归并排序: 拓扑排序: ...
分类:
编程语言 时间:
2019-03-09 01:20:29
阅读次数:
194
选择树 概念:假设有k个已经排序的序列,并且想要将其合并成一个单独的排序序列。每个排好序的序列叫走一个归并段。 暴力算法:假设总共有n个数字,每次取k个归并串最小或者最大的一个数,比较k-1次得到所有数中最大或者最小的树,存入新空间中,接着一直这样比较...需要比较的次数是n*(k-1) 选择树算法 ...
分类:
其他好文 时间:
2019-03-08 09:39:31
阅读次数:
166
排序算法有很多种,并在实际编程过程中用的非常广泛。常用的排序算法有:插入排序算法,选择排序算法,冒泡排序算法,快速排序算法,归并排序算法,希尔排序算法,堆排序算法。
分类:
编程语言 时间:
2019-02-21 09:46:42
阅读次数:
150
9二、选择排序: 选择排序十分的简单和直观,其的工作原理是每一次从待排序的数组中选出最小(或最大)的一个元素,存放在序列的起始位置。因此,选择排序也是像我们这种萌新最容易写出来的排序算法。 排序步骤: 重复如此直到完成排序 下面举个栗子: 有一个数组其元素如下 5 1 4 3 2 6 7 0 9,其 ...
分类:
编程语言 时间:
2019-02-04 22:11:03
阅读次数:
226
介绍 常见的算法排序 low B三件套 N B三件套 ...
分类:
编程语言 时间:
2019-01-28 10:54:06
阅读次数:
171
1 ``` 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 using namespace std; 10 11 /*评委打分案例(sort算法排序) 12 创建5个选手(姓名,得分),10... ...
分类:
其他好文 时间:
2019-01-27 13:05:22
阅读次数:
183
1、使用单链表对集合进行交、并、差的运算,重点在于对单链表进行排序,排序后的单链表在进行运算,可以减少节点的比较优化时间复杂度。 ...
分类:
其他好文 时间:
2019-01-13 23:23:46
阅读次数:
266
分治法 分治法(divide and conquer,D&C):将原问题划分成若干个规模较小而结构与原问题一致的子问题 ;递归地解决这些子问题,然后再合并其结果,就得到原问题的解。 容易确定运行时间,是分治算法的优点之一。 分支模式在每一层递归上都有三个步骤: --分解(Divide):将原问题分解 ...
分类:
编程语言 时间:
2019-01-13 19:16:07
阅读次数:
174