自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 资源 (3)
  • 收藏
  • 关注

原创 HDU 1305 Immediate Decodability HDU 1671 Phone List(字典树)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1305http://acm.hdu.edu.cn/showproblem.php?pid=1671这两题几乎都是一样,所以就一起贴上来了...........题意:每个测试实例先输入一个数N(1),接着输入N个数字串。这些数字串作为电话号码,判断在拨号过程中是否出现干扰的号码

2012-03-28 08:08:54 2501 2

原创 HDU 1251统计难题(字典树)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1251经典的字典树题目。。字典树:又称单词查找树,Trie树,是一种树形结构,是一种哈希树的变种。典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:利用字符串的公共前缀来节约存储空间,最大限度地减少无谓的字符串比较,查询效率比哈希

2012-03-22 08:11:37 1914

原创 C++ *max_element函数找最大元素 *min_element函数找最小元素 STL算法

#include#includeusing namespace std;int main(){ int n[]={1,4,22,3,8,5}; int len=sizeof(n)/sizeof(int); cout<<*max_element(n,n+len)<<endl; cout<<*min_element(n,n+len)<<endl; return 0;}C++ S

2012-03-20 14:16:13 38288

原创 NYOJ 42 一笔画问题

题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=42快有一个礼拜没写过博客了,数据结构里面的算法太多,经典题目就那么点,做一道少一道,因为自己学,所以花了很多时间来理解。。。。。。不扯了。。。。。。思路:简单的欧拉回路,判断是否能够一笔画就在于各个点是否连通,判断是否连通可以用并查集来做。而且节点为奇点个数为0或者为2才能一笔画。

2012-03-02 16:32:22 5040

转载 STL 整理(map、set、vector、list、stack、queue、deque、priority_queue)

向量(vector) 连续存储的元素Vectorc;c.back()    传回最后一个数据,不检查这个数据是否存在。c.clear()     移除容器中所有数据。c.empty()   判断容器是否为空。c.front()     传回地一个数据。c.pop_back() 删除最后一个数据。c.push_back(elem)  在

2012-03-27 19:18:01 1423

原创 HDU 1075 What Are You Talking About(字典树)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1075还是赤裸裸的字典树问题。还是几乎套模版来做。。。。。。除了复制标记以外的跟上一篇博客统计难题没什么区别。不过一个小细节还是坑了一个小时。。。。。直接上代码。。。。。#include#include#includestruct node { bool flag;/*标记是

2012-03-27 11:24:04 1999 1

原创 HDU 1873 看病要排队(优先队列)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1873第一次写的优先队列题,准确来说不是写,是从网上找资料再从那里copy过来的。。。。。。。不过还是要保存下来学习。。。。。#include#include#include#includeusing namespace std;struct patient{ int

2012-03-23 12:36:56 1719

原创 字典树建立的一般方法

字典树的一般方法:写着留着看...........不喜勿喷............(1)建立起一个链表。    struct node     {        int count;/*数据域*/        struct node *next[26];/*指针域,26个只是表示小写英文字母,如果还要其他的字符则需要继续开大数组*/    };(2)建立起头节点

2012-03-22 09:55:53 1822

原创 NYOJ 290 动物统计加强版(字典树)

题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=290经典的字典树的问题,代码几乎可以来当模版来用了,就留下来了~~~,不过貌似用运算符重载排序(不知道是不是)也能过。。。。。。。。需要注意的是开辟一个新的内存时下一个指针一定要指向NULL;字典树代码:#include#include#includeint max;

2012-03-21 09:10:28 1996

转载 STL 优先队列的优先级

struct cmp1{ bool operator ()(int &a,int &b) { return a>b;//最小值优先 } }; struct cmp2{ bool operator ()(int &a,int &b) { return a<b;//最大值优先 } };

2012-03-20 09:58:37 6602

原创 vector类中为什么没有push_front方法和pop_front方法

vector是开辟一块空间来作为数组来存放元素(随机迭代器),如果有了pop_front,pop_back这个功能则很容易造成内存碎片,pop_front会造成头部内存产生碎片,pop_back造成尾部内存产生碎片,所以不能像deque(双向迭代器)那样有pop_front, pop_back这样的完全相同的实现.其次才是性能上的问题,vector实现pop_front的功能可以这样:vec

2012-03-19 20:49:11 21494 4

转载 树状数组应用

一维树状数组常用的3个函数int lowbit(int x) //取x的最低位1,比如4,则返回4,如5,则返回1{ return x&(-x);}void update(int i, int val) //将第i个元素增加val{ //i的祖先都要增加val while(i <= n) { sum[i] += val; i += lowbit(i); //将i

2012-03-15 17:07:08 907

转载 一位ACMer过来人的心得

刻苦的训练我打算最后稍微提一下。主要说后者:什么是有效地训练?       我想说下我的理解。       很多ACMer入门的时候,都被告知:要多做题,做个500多道就变牛了。其实,这既不是充分条件、也不会是必要条件。       我觉得一般情况下,对于我们普通学校的大学生,各方面能力的差距不会太大,在这种情况下,训练和学习的方法尤为重要。       其实,500题

2012-03-15 08:15:28 1190 4

原创 大数乘法(模版)

直接上代码:#include#includeint main(){ int ncases,i,j,alen,blen,sum[1001]; char a[1001],b[1001],ans[1001]; scanf("%d",&ncases); while(ncases--) { memset(a,0,sizeof(a)); memset(b,0,sizeof(b));

2012-03-14 19:23:17 820

原创 NYOJ 322 Sort(归并排序求逆序数)

题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=322如果按冒泡排序这些O(n^2)肯定会超时,所以需要找一种更快的方法 --------归并排序。归并排序是建立在归并操作上的一种有效的排序算法。该算法是采用分治法的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序

2012-03-14 13:46:56 1737

转载 树状数组

问题提出:已知数组a[],元素个数为n,现在更改a中的元素,要求得新的a数组中i到j区间内的和(1思考:对于这个问题,我们可以暴力地来解决,从a[i]一直累加到a[j],最坏的情况下复杂度为O(n),对于m次change&querry,合起来的复杂度为O(m*n),在n或m很大的情况下,这样的复杂度是让人无法忍受的.另外,如果没有元素的变更,我们完全可以存储sum[1,k](k=1,2,…

2012-03-13 17:17:04 685

转载 图论基本知识点

1.图的定义由若干个不同顶点与连接其中某些顶点的边所组成的图形就称为图。(顶点的位置以及边的曲直都是无关紧要的,而且也是没有假定这些顶点和边都要在一个平面内,只关心顶点的多少和这些变是连接哪些顶点的),通常用大写字母G表示图,V表示所有顶点的集合,E表示边的集合,记作G = (V, E)。2.同构如果两个图G和G1,它们顶点之间可以建立起一对一的对应,并且当且仅当G的顶点Vi与

2012-03-10 11:13:49 1238

原创 NYOJ 257 郁闷的C小加(一)(中缀式变后缀式)

题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=257经典的数据结构题,用栈跟队列模拟。中缀式变后缀式:stack optr;用来存放运算符栈。队列queue opnd用来存放后缀表达式。从左到右扫描中缀表达式,是操作数就放进队列 opnd的末尾。如果是运算符的话,分为下面3种情况:(1)如果是‘(’直接压入opt

2012-03-05 07:46:03 1427

傅里叶变换及C语言实现

傅里叶变换及C语言实现

2013-09-07

TMS320C6000系列DSPs原理与应用(第二版)

TMS320C6000系列DSPs原理与应用(第二版)

2013-09-07

空空如也

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

TA关注的人

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