- 博客(15)
- 资源 (1)
- 收藏
- 关注
原创 C++Experience
题目2-实验1:定义并实现一个平面点类1. Point,包含protected类型的数据成员m_x、m_y用于保存x轴、y轴两个坐标值,并具有如下数据成员:2. get_x()、get_y()用于获取x、y轴的坐标值3. set_x()、set_y()用于获取x、y轴的坐标值4. DisplayPoint()函数,用于输出点的全部信息(坐标等)5. 主程序从键盘输入点的坐标值,
2014-09-10 20:31:57 846
原创 深入分析STL标准模板List的使用及事项
一、List介绍:List是C++STL标准模板库的重要类模板之一,通俗解释可以看做是双向链表。可在常数时间内在任何位置执行插入和删除操作的顺序容器。相较于vector的连续线性空间,list就显得复杂许多,它的好处是每次插入或删除一个元素,就配置或释放一个元素空间。因此,list对于空间的运用有绝对的精准,一点也不浪费。而且,对于任何位置的元素插入或元素移除,list永远是常数时间。
2014-09-10 20:20:18 859
原创 树型结构2 AVL 森林与二叉树转化 二叉链表三种遍历
(4).AVL树:使用了AVL树的插入,删除和查找。数据结构即二叉树,多一个平衡因子(左右树深度的差值)的变元。主要函数:void Lrotate(node * &p); //左旋 void Rrotate(node * &p); //右旋 void maintain(node * &p); //维护平衡思路及原理:AVL树是一种平衡二叉树,其难点在于树
2014-05-07 23:54:18 1229
原创 树型结构1 堆排序 线索二叉树 huffman
(1).堆排序:使用了数组结构进行堆排序。输入一组数,输出排序后的数列。结构如下:struct node{ elemtype key;}A[maxn];主要函数:void PushDown(int first,int last); //整理堆,维护堆的性质 void Sort(int n); //排序总函数思路及原理:首先把数组建立为初始堆,然后把堆顶元素与
2014-05-07 23:50:22 1003
原创 连通性Tarjan算法 双连通与强连通
/* author:yjc time:2014/3/29 title:双连通性算法 双连通:定义DFN(u)为u在搜索树(以下简称为树)中被遍历到的次序号。定义Low(u)为u或u的子树中能通过非父子边追溯到的最早的节点,即DFN序号最小的节点Low(u)=Min { DFN(u) DFN(v) (u,v)为后向边(返祖边) 等价于 DFS(v)且v
2014-05-07 23:39:41 1403
原创 开散列、闭散列实现及性能比较
总程序实现了添加数据信息,建立开散列表,闭散列表,开散列和闭散列的查找,时间性能分析,还有溢出表的建立与查找这些功能。下面分开说明原理:开散列表:运用单链表存储方式,不产生堆积现象,但因为附加了指针域而增加了空间开销。闭散列表:运用顺序表存储,存储效率较高,但容易产生堆积,查找不易实现,需要用到二次再查找。溢出表:开、闭散列的结合运用,第一个顺序表存放类似指针域,第二个则存放溢出。
2014-05-07 23:36:35 5737
原创 线段树
参考系列:http://www.cnblogs.com/shuaiwhu/archive/2012/04/22/2464583.html直接上模板:
2014-05-07 23:27:24 462
原创 zoj 2855 Google Map
DescriptionGoogleMap is a useful tool and most of you should be familiar with it. As the best hacker in the world, Jack is planning to retrieve all the data on the GoogleMap server. But he soon gi
2014-05-04 10:37:29 649
原创 ZOJ Talented Chef
C题目传送门:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=5265
2014-04-17 09:35:02 492
原创 What day is that day?
I题题目传送门:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3785
2014-04-15 23:14:05 792
原创 HIT_Training 20140415
传送门:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3776
2014-04-15 23:09:56 515
原创 bnuoj 29065 鸣人的查克拉
《火影忍者》中,在忍者们使用忍术的时候,需要一定的查克拉(可以看成是一种体力值)。在战斗前,大家都希望提高自己的查克拉。鸣人发明了一种忍术,可以在短时间内提高查克拉。在使用忍术前,鸣人需要做一个仪式,这个仪式决定之后每个时刻的一个查克拉值。这些值的使用规则是:如果在某个时刻发动这个忍术,鸣人需要先消耗该时刻的查克拉值;在某个时候结束这个忍术,鸣人能获得该时刻的查克拉值(忍术必须先发
2014-04-05 21:20:16 1032
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人