1.堆的概念
参考:http://www.cnblogs.com/luchen927/archive/2012/03/08/2381446.html
堆(heap),一种数据结构,堆分为最大堆和最小堆,其实就是完全二叉树。最大堆要求节点的元素都要大于其孩子,最小堆要求节点元素都小于其左右孩子,两者对左右孩子的大小关系不做任何要求,其实很好理解。有了上面的定义,我们可以得知,处于最大堆的根节点的元...
分类:
编程语言 时间:
2015-05-07 12:30:53
阅读次数:
137
前文LRU Cache 暨LinkedHashMap源码阅读提到了如何使用LinkedHashMap来实现一个LRU数据结构,今天在看OSCache代码算法部分的时候,就用到了该知识,what was done contributes what is done now。algorithm包是包含下列缓存过期策略的类:
下面重点介绍LRU和FIFO。LRUprivate Collection l...
分类:
系统相关 时间:
2015-05-07 12:28:46
阅读次数:
183
说到图像像素,肯定要先认识一下图像中的坐标系长什么样。 1.坐标体系中的零点坐标为图片的左上角,X轴为图像矩形的上面那条水平线;Y轴为图像矩形左边的那条垂直线。该坐标体系在诸如结构体Mat,Rect,Point中都是适用的。(OpenCV中有些数据结构的坐标原点是在图片的左下角,可以设置的)。 2....
分类:
其他好文 时间:
2015-05-07 10:22:06
阅读次数:
501
1 package cn.it.struct; 2 3 public class MyStack { 4 private int top=-1; 5 6 private Node current; 7 8 9 private class No...
分类:
其他好文 时间:
2015-05-07 10:09:28
阅读次数:
138
题目:
假设有这样一个拥有三个操作的队列:
1.EnQueue(v):将v加入队列中
2.DeQueue:使队列中的队首元素删除并返回此元素
3.MaxElement:返回队列中的最大元素
请设计一种数据结构和算法,让MaxElement操作的时间复杂度尽可能地低。
解法一:
解法二:...
分类:
其他好文 时间:
2015-05-07 08:58:46
阅读次数:
116
最近之上各种不够,简单题要么写不出,但是看一眼题解又觉得思路简单,马上写出,难得题思路完全想不出,哎!数据结构题又不会,智商压制智商压制,ACM 这样停停滞滞,我知道ACM 并非一日之寒,没有长时间的知识累积,非智商天赋高的人 简直不能玩。智商流智商流,前面还有太多题要补。
分类:
其他好文 时间:
2015-05-07 06:22:16
阅读次数:
129
第七章 文件操作和模板
7.1 文件操作
7.2 函数模板
泛型程序设计(Generic Programming)
算法实现时不指定具体要操作的数据的类型
泛型——算法实现一遍,适用于多种数据结构
优势: 减少重复代码的编写
两种类型
函数模板类模板
与“抽象、封装、继承、多态”并列
函数模板
template
...
分类:
编程语言 时间:
2015-05-07 00:59:44
阅读次数:
200
简介: 优先队列是一种容器适配器,优先队列的第一个元素总是最大或最小的(自定义的数据类型需要重载运算符)。它是以堆为基础实现的一种数据结构。成员函数(Member functions)(constructor): Construct priority queue (public member fu....
分类:
其他好文 时间:
2015-05-07 00:36:01
阅读次数:
115
问题:
假设有这样一个拥有3个操作的队列:
1. EnQueue(v): 将v加入队列中
2. DeQueue(): 使队列中的队首元素删除并返回此元素
3. MaxElement: 返回队列中的最大元素
设计一种数据结构和算法,让MaxElement操作的时间复杂度尽可能地低。
方法:用两个栈来模拟队列
在代码中,maxStackItemIndex代表栈中dui...
分类:
其他好文 时间:
2015-05-06 23:08:08
阅读次数:
275