- 博客(7)
- 收藏
- 关注
原创 队列(Queuing)——简单队列
队列是一种特殊的线性结构,它只允许在队列的头部(head)进行“出队”操作,在队列的尾部(tail)进行“入队”操作。 当队首和队尾相等时(head == tail),为空队列。 进行一个简单的小游戏,已知一串数字,得到它“解密”后的数字。规则为删除第一个,把第二个放队列最后面,删除第三个,第四个数字放最后面,以此类推,直到删除所有的数字,按删除的顺序排的数字即为“解密”后的数字。 #includ...
2020-03-19 18:34:03 211
原创 排序算法(Sorting)——快速排序
每次排序的时候设置一个基准点,将小于等于基准点的数全部放到基准点的左边,将大于等于基准点的数全部放到基准点的右边。 其实快速排序是基于一种叫做“二分”的思想。 #include<iostream> using namespace std; int const M=1001; int a[M]; int N; void Quicksort(int left,int right) { ...
2020-03-15 21:11:46 240
原创 排序算法(Sorting)——冒泡排序
冒泡排序的基本思想是:每次比较两个相邻的元素,如果它们的顺序错误就把它们交换过来。 核心为两个嵌套循环。 简单的给出一组数据,从小到大将他们排序。 #include<iostream> using namespace std; int const M=1001; int a[M]; int main() { int N,t; cin>>N; for(int i=1;...
2020-03-14 17:16:10 265
原创 排序算法(Sorting)——桶排序
桶排序使排序算法里面最快最简单的排序算法。 桶排序,定义一个一维数组,初始值全部为0,把数组号与要比较的数据做映射,若相等,则该数组的值加一,以此类推,直到所有的数都比较完。 基础版本,已知输入N个数字,从小到大排列输入的这几个数。 #include<iostream> using namespace std; int const Q=1001; int a[Q]={0}; int ...
2020-03-14 15:25:53 171
原创 图论算法(一)
图论算法(一)—— 图论基础 简单说,图就是表示若干个点,两点直接连接起来组成的图形。 详细介绍请点击添加链接描述 一般来说,用邻接矩阵表示图可以快速查找到每一个顶点的连接情况。 我们先解决一个四色地图问题。 任何一个不重叠的地图,只用四种颜色就可以区分出来不同的区域。 现在给一个地图染色,输入N,表示N个区域,然后输入N行,每一行表示该行的第一个数字代号的区域与后面数字代号的区域相互接壤,要求输...
2020-03-05 22:31:58 162
原创 算法——排序算法(二)
算法——排序算法(二) 选择排序 选择排序,选择所有元素中最小的一个放在第一位,然后从剩下的元素中选择最小的放第二位,依此类推,完成选择排序。 #include<iostream> #define M 10001 using namespace std; int a[M]; void SelectSort(int n) { int min; for(int i=1;i<=n...
2020-02-28 17:13:11 86
原创 算法——排序算法(一)
算法——排序算法(一) 排序(Sorting),简言之,就是将一系列无序的数据元素组合成有序的序列。 一次查找两个元素 输入: 元素个数(1000以内) 元素数 输出: 最小的两个数 #include<iostream> #include<math.h> #define M 1001 using namespace std; int main() { int N,t,n...
2020-02-27 21:35:22 102
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人