博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

2010年12月21日

摘要: 设计包含min函数的栈 题目:定义栈的数据结构,要求添加一个min函数,能够得到栈的最小元素。要求函数min、push以及pop的时间复杂度都是O(1)。 分析:无论使用链表还是数组实现的栈,push和pop操作的时间复杂度都是O(1)。所以,难点在于实现min使其时间复杂度也是O(1)。高级数据结 构的斐波那契堆就是通过一个指向最小元素的指针来实现min函数的,并保证了其时间复杂度为O(1)。因此,该堆栈需要新增一个元素minPoint指 针。 假设目前minPoint指针指向最小元素,push(data),若data比minPoint指向的元素还小,那么minPoint指向data。再 p 阅读全文
posted @ 2010-12-21 10:24 Likwo 阅读(2068) 评论(0) 推荐(0) 编辑

摘要: 警告信息 warning C4018: “<”: 有符号/无符号不匹配 warning C4018: “”: 有符号/无符号不匹配出错代码 for(int j=0;jdetector.size();j++)出错原因分析: detector 是一个Vector容器 ,detecot.size() 在容器说明中 被定义为: unsigned int 类型, 而j是int 类型 所以会出现: 有符号/无符号不匹配 警告 错误改正 : 定义j为unsigned 类型后就可以了 即: for(unsigned int 阅读全文
posted @ 2010-12-21 10:20 Likwo 阅读(1818) 评论(0) 推荐(0) 编辑