数据结构-算法
代理舍长
随便花点时间学点技术,认真对待一下生活,不要饿肚子
展开
-
ACM水题
2017.03.185个数求最值描述 设计一个从5个整数中取最小数和最大数的程序 输入 输入只有一组测试数据,为五个不大于1万的正整数 输出 输出两个数,第一个为这五个数中的最小值,第二个为这五个数中的最大值,两个数字以空格格开。 样例输入1 2 3 4 5样例输出1 5代码实现#include <iostream>using namespace std;int main(){原创 2017-03-18 08:27:00 · 391 阅读 · 0 评论 -
基础算法——直接插入排序
直接插入排序就像平常我们打扑克牌一样,我们总是在别人发牌的时候,拿到一张牌就把它插到合适的位置上原创 2017-03-13 06:58:52 · 246 阅读 · 0 评论 -
基础算法——冒泡排序
冒泡排序是基于交换排序的基本思想,两两进行比较,一旦不满足次序要求则进行交换,直到整个序列全部满足要求为止。原创 2017-03-13 07:53:50 · 253 阅读 · 0 评论 -
基础算法——简单选择排序
选择排序的思想就是每一趟排序都选出最小的值,按顺序放到已排序的元素集合后面。核心操作是要找出未排序集合中的最小值原创 2017-03-13 08:44:06 · 237 阅读 · 0 评论 -
基础算法——折半插入排序
这是一种对直接插入排序的一种改良,因为直接插入排序的第一步,我们就能够获取到一个有序的集合了,对这个集合我们可以使用折半查找,查找下一个插入的位置。再说一下折半查找的实现原理,但是折半查找有一个硬伤,要求待查找的集合是有序的,所以我们在查找之前就需要先进行排序。比如我们要在1-8中找到3的话,使用折半查找 代码实现如下: private static int Binary_Search(in原创 2017-03-14 20:32:01 · 324 阅读 · 0 评论 -
贪心算法——会场安排问题
最近希望在日常加强一下算法的水平,所以找了一个ACM网站来强行刷水题,不过脑子笨,刷个题老半天的,果然技术有限啊,先做个最简单的会场安排问题来增强一下自信心吧。描述 学校的小礼堂每天都会有许多活动,有时间这些活动的计划时间会发生冲突,需要选择出一些活动进行举办。小刘的工作就是安排学校小礼堂的活动,每个时间最多安排一个活动。现在小刘有一些活动计划的时间表,他想尽可能的安排更多的活动,请问他该如何安排原创 2017-03-15 02:37:03 · 7164 阅读 · 0 评论 -
基础算法——快速排序
想要变优秀,顺其自然是不可能的 你需要做很多,花很多时间,忍耐并且坚持。快速排序,简称快排,也是初级面试里面被问到最多的排序算法,在普通使用情况下(数据基本无序,数据量n巨大),相对于直接插入排序,简单选择排序,冒泡法排序,快速排序的效率都会更优。这是由冒泡排序改进的算法,也是一种基于交换排序的算法,但是不同于冒泡排序,冒泡排序每次只比较交换相邻的两个元素,每次只消除两个元素之间的逆序,但是原创 2017-03-16 15:41:57 · 406 阅读 · 0 评论