摘要: 堆,与其说是一种数据结构,不如说是一种排序算法。用堆算法,可以轻松得到一组数据中最大的或最小的元素。 其结构就是完全二叉树的顺序存储方式。即在一个数组中存储一颗完全二叉树。 通常,堆分为"大根堆"和"小根堆",前者的树顶元素是数组中最大的一个,后者是最小的一个。 阅读全文
posted @ 2008-10-11 22:32 刺儿头 阅读(830) 评论(1) 推荐(0) 编辑
摘要: 大家知道,STL最最主要,也是最最常用的部分就是泛型容器和范型算法。而联系起这两大部分的,就是iterator(迭代器)。 迭代器大体分为这么几类(级别从低到高) 只读迭代器input_iterator 只写迭代器output_iterator forward_iterator,这个其实是允许写入型算法在其所形成的区间上做读写操作 双向移动可读写bidirectional_iterator 随机访问迭代器random_access_iterator 阅读全文
posted @ 2008-10-08 22:55 刺儿头 阅读(403) 评论(0) 推荐(0) 编辑
摘要: 刚发现,以前用vector觉得挺简单的,自己实现一下才知道这么麻烦。真是佩服那些C++大师,写出这么好的东西。 这算是一个简易的vector吧,之所以说它简易,并不是因为功能少,而是实现的复杂度远远不及std::vector 但基本原理是一样的 阅读全文
posted @ 2008-10-07 23:08 刺儿头 阅读(495) 评论(0) 推荐(0) 编辑
摘要: 其实图的存储结构很简单,常见的就是邻接表和邻接矩阵。 个人觉得,比较负责的是求最短路径之类的算法。 下面先发一个基础版的,实现了深度和广度优先遍历。 阅读全文
posted @ 2008-10-06 22:55 刺儿头 阅读(451) 评论(0) 推荐(0) 编辑
摘要: 1、带头尾节点的双链表 更新日志:08.10.07,将Iterator insert(const T& data);改为void push_back(const T& data); 修改了一处bug 2、循环队列 3、无向图--初级版 4、变长数组 5、堆 阅读全文
posted @ 2008-10-06 18:06 刺儿头 阅读(292) 评论(0) 推荐(0) 编辑
摘要: 实现队列的方法很多,比如动态数组、链表,今天主要介绍循环队列 首先说用静态数组实现简单队列。 阅读全文
posted @ 2008-10-06 15:29 刺儿头 阅读(7318) 评论(5) 推荐(0) 编辑
摘要: 最近要考数据结构了,哎,这么大了还考试,真烦。既然自己干这行的,数据结构又是那么基础和必要的东西,所以决定把一些数据结构用C++重写一遍,也算是加深学习吧。 说实话,真是没怎么写过这么基础的数据结构,如果有什么缺陷请大家多多提意见。日后还会继续写其他的 阅读全文
posted @ 2008-10-05 22:15 刺儿头 阅读(486) 评论(0) 推荐(0) 编辑
摘要: 怎么样,看起来不错吧。 材料:土豆、丘比沙拉酱、火腿肠、金枪鱼罐头、水果 制作方法:嘿咻~嘿咻~主要是力气活 阅读全文
posted @ 2008-10-04 19:28 刺儿头 阅读(278) 评论(1) 推荐(0) 编辑
摘要: 最近在做一个小项目,定时计算一些金融指标。在系统运行过程中,可能会由于数据等原因出现不同的错误。但由于系统会在服务器上7*24小时运行,出现一些无关大局的错误不该影响系统计算其他指标,但必须把错误记录下来。 其实这非常容易实现,只要在出现错误的地方调用写入日志的函数即可。 但问题是,当出现错误时,错误日志不一定被写到文件中,或许会被输出到界面上的一个ListView中,甚至通过网络发送。 阅读全文
posted @ 2008-10-03 21:52 刺儿头 阅读(688) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2008-10-03 20:46 刺儿头 阅读(258) 评论(3) 推荐(0) 编辑