
数据结构
sinshine
这个作者很懒,什么都没留下…
展开
-
String
class myString{private: char* _ptext; int _length;public: myString(char* text, int length) { memcpy(_ptext, text, length); }原创 2011-09-01 14:40:28 · 479 阅读 · 0 评论 -
循环队列的数组实现
几个月前,去一软件公司面试,要求写一个循环队列,要求能编译,功能基本全。class circular_queue{private: enum {max_len = 10}; int buffer[max_len]; int head; int rear;p原创 2011-08-17 21:46:40 · 417 阅读 · 0 评论 -
如何维护一个中位数
设计一个数据结构,包括两个函数,插入数据和获得中位数。利用大根堆和小根堆,其中大根堆维护较小的一半数据,小根堆维护较大的一半数据。然后根据相应的情况,对两个堆做相应的堆化操作,以满足两个堆中元素数目一致。时间复杂度O(lgn)extension:设计一个堆原创 2011-10-11 21:29:38 · 1117 阅读 · 0 评论 -
堆介绍
大根堆小根堆最大最小堆双端堆(对称最大最小堆)原创 2011-10-13 17:30:52 · 485 阅读 · 0 评论 -
状态机
从倒水问题中,深刻理解了状态机设计的重要性,包括状态机抽象和状态机转化关系的设计。倒水问题,定义好状态和状态转化关系,剪枝去掉不可能的状态和重复的状态,用一片内存空间来保存状态。原创 2011-10-16 20:01:10 · 520 阅读 · 0 评论