自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Tovi的博客

用勇气改变可以改变的事情,用胸怀接受不能改变的事情,用智慧分辨两者的不同。

  • 博客(14)
  • 资源 (1)
  • 收藏
  • 关注

原创 并查集

并查集(Union-find Sets)是一种非常精巧而实用的数据结构,它主要用于处理一些不相交集合的合并问题。一些常见的用途有求连通子图、求最小生成树的 Kruskal 算法和求最近公共祖先(Least Common Ancestors, LCA)等。使用并查集时,首先会存在一组不相交的动态集合 $S = \left\{ {{S_1},{S_2}, \cdots ,{S_k}} \rig

2015-08-31 21:35:10 550

原创 简单的快速幂取模

HDU1097本题为快速幂取模运算,直接套用模板即可//题目描述:给你数a,b,让你输出a^b的最后一位#include #include using namespace std;#define LL long long LL pow_mod(LL a, LL b){ LL ans = 1; a = a % 10; while (b > 0) { i

2015-08-26 16:21:02 551

转载 线段树

线段树转载请注明出处,谢谢!http://blog.csdn.net/metalseed/article/details/8039326 持续更新中···一:线段树基本概念1:概述线段树,类似区间树,是一个完全二叉树,它在各个节点保存一条线段(数组中的一段子数组),主要用于高效解决连续区间的动态查询问题,由于二叉结构的特性,它基本能保持每个操

2015-08-26 10:37:27 634

原创 哈希表

EqsTime Limit:5000MS     Memory Limit:65536KB     64bit IO Format:%I64d & %I64uSubmit StatusDescriptionConsider equations having the following form: a1x1 3+ a2x2 3+ a3x3 3+ a4x4

2015-08-24 09:33:03 592

原创 数据结构_散列表

散列表的查找技术       我们学过的查找技术都是通过一系列的给定值与关键码的比较,查找效率依赖于查找过程中进行的给定值与关键码的比较次数。而散列表的查找不用比较,通过关键码直接确定存储位置。在存储位置和关键码之间建立一个确定的对应关系。        散列表的基本思想:在记录的存储地址和他的关键码之间建立一个确定的对应关系。这样,不经过比较,一次读取就能得到所查元素的查找方法。

2015-08-23 23:18:16 1323

原创 数据结构_链表_单向链表

链表(Linked List)是由一连串的结构(称为结点)组成的,其中每个结点都包含指向链中下一个结点的指针。链表中的最后一个结点包含一个空指针。链表与数组不同,数组的线性序是由数组的下标决定的,而链表中的顺序是由各结点的指针域所决定的。链表可以灵活地表示动态集合。 采用链表表示线性表,无论向表中插入或删除元素,都不需要移动数据。与顺序表示法不同,链表的结点不再是连续且等距离地存放

2015-08-23 16:14:07 531

原创 数据结构_队列

队列是一种有序的线性表,队列的两端分别称为队首和队尾。队列只允许在队尾进行插入操作,在队首进行删除操作。插入元素称为入队,删除元素称为出队。       队列常用链表或数组来实现。#include #include using namespace std;#define max 1000//队列定义struct element{ int key;};

2015-08-23 15:13:34 680

原创 动态规划_数字三角形

问题描述:在下面的数字三角形中寻找一条从顶部到底边的路径,使得路径上所经过的数字之和最大,路径上的每一步都只能往左下或右下走。只需要求出这个最大和即可,不必给出具体路径。输入数据的要求:三角形的行数大于1小于等于100,数字为0——99.输入格式:5 //三角形的行数,下面是三角形73 88 1 02 7 4 44 5 2 6 5#include using

2015-08-19 10:00:18 1809 3

原创 动态规划_拦截导弹

被拦截的导弹应该按照飞来的高度组成一个非递增序列。求最长非递增序列的长度。#include using namespace std;int main(){ int h[2000], d[2000], c; //h表示 高度值, d表示最优值, c是能拦截的最多导弹数 int count = 0; //统计飞来的导弹数 while (cin >> h[count

2015-08-19 09:28:13 873

原创

栈是一种线性表,其插入和删除操作都只能在表的一端进行,这一端称为栈顶,而另一端称为栈底!   直接上代码!#include #include using namespace std;#define max 10000struct element{ //定义栈 int key;};element stack[max];int top = -1;bo

2015-08-15 15:29:46 598

转载 写给软件学院的本科生

本人今年北软研究生毕业,本科是35所示范性软院之一,在毕业之际,回顾软院的7年学习生活,很感慨,写点东西给软件学院的师弟师妹们。今年软件工程被提升至一级学科,没有挂在计算机科学之下了,而且软件学院开始招收工程博士生了,真是可喜可贺。我读软件学院本科的时候,软院才刚成立不久,35所示范性软院之一,那个时候想找个师兄问一问大学该怎么度过,软院第一届的师兄们都还没毕业呢,也很懵懂,咋给我

2015-08-13 09:38:31 516

原创 a*b(mod m)的实现过程

/*a*b (mod m) 的实现过程*//*当a,b很大的时候mod m就会产生溢出, 故运用乘法原理转换为加法求解*/LL multi(LL a, LL b, LL m){ LL exp = a %m, res = 0; while (b) { if (b & 1) //b的最低位是否为1 { res = res + exp; if (res >= m)

2015-08-03 08:19:55 2032

原创 素数筛法

/*给定一个正整数N,求出[2,N]中的所有素数*/#define maxn 1000000boool vis[maxn];void getprime(int n, int &tot, int ans[]) //筛法将合数筛掉,留下的则是素数 ,用于快速判断一个区间内的所有素数 { fot = 0; //记录素数的个数 for (int i = 2; i<= n; i++)

2015-08-03 08:07:39 561

原创 数论——同余

HDU 1212  题目链接  点击打开链接description:给定一个大数a, 求模b的结果。题目分析:由于a很大,因此需要引入字符串进行处理!算法分析:   同余定理1. ( m + n ) % c =  (m % c + n% c) % c2. (m* n ) % c =( (m % c ) * ( n% c))  % c3. (m ^ n) % c = ((m

2015-08-01 09:10:08 910

操作系统课件

有助于学习操作系统、更适合于初学者

2016-06-19

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除