
啊哈!算法
YUqiongqlm_
最好的时间是一年前,其次是现在
展开
-
队列_概念、举例、STL
队列的概念队列是一种特殊的线性结构它只允许在队首(head)进行删除操作,称为“出队”,在队尾(tail)进行插入操作,这称为“出队”当队列中没有元素时(head=tail,称为空队列队列的应用:排队买票,新来的人站在队列最后边,来的越早的人越靠前,先来的人先服务,我们称为“先进先出”(First In First Out,FIFO)原则队列是广度优先搜索和队列优化的Bellman-Ford最短路算法的核心数据结构定义两个整型变量head用来记录队列的队首(即第一位)tail用来记录队原创 2021-01-17 22:10:44 · 260 阅读 · 0 评论 -
小哼买书_桶排序、冒泡排序、快速排序与简单的STL的应用_C语言
题目要求将书去重并从小到大排序输入1020 40 32 67 40 20 89 300 400 15输出15 20 32 40 67 89 300 400方法一 应用桶排序先去重后排序#include<stdio.h>#include<iostream>using namespace std;int main(){ int n,num,a[1005]={0}; cin>>n; for(int i=0;i<n;i++)原创 2021-01-12 15:29:51 · 183 阅读 · 0 评论 -
排序_最常用的排序_快速排序_C语言
快速排序方法设定两个哨兵i,jj找小于基准的数,初始在序列的最右边i找大于基准的数,初始在序列的最左边直到i与j碰头,两个数交换位置快速排序的每一轮就是将这一轮的基准数归位,直到所有的数都归位为止,排序结束快速排序复杂度快速排序采用二分思想最坏情况(相邻的两个数产生了交换),复杂度O(N2)平均时间复杂度O(NlogN)...转载 2021-01-11 22:13:55 · 107 阅读 · 0 评论 -
排序_冒泡排序
冒泡排序基本思想每次比较两个相邻的元素,如果它们的顺序错误就把它们交换过来。冒泡排序原理(以从大到小排序为例)每一趟只能将一个数归位。每一趟只能归位一位。每一趟都需要从第1位开始进行相邻的两个数的比较,将较小的一个数放在后边,比较完毕后向后挪一位继续比较下面两个相邻数的大小,重复此步骤,直到最后如果有n个数进行排序,只需将n-1个数进行归位,即进行n-1趟操作冒泡排序的核心部分双层嵌套循环冒泡排序的时间复杂度O(N2)【一】将给定个数的数字进行从大到小排序输入样例转载 2020-12-31 23:10:43 · 246 阅读 · 0 评论 -
排序_最快最简单的排序——桶排序
期末考试完老师要将同学们的分数从高到低排序。班上只有5名同学,分别考了5、3、5、2、8分(满分是十分)。如何让计算机随机读入5个数然后将这5个数从大到小输出?题目解析把输入的分数当作数字下标计数#include<stdio.h>#include<iostream>using namespace std;int main(){ int score; int cnt[11]={0}; for(int i=0;i<5;i++) { cin>>.转载 2020-11-07 18:36:22 · 244 阅读 · 0 评论