架构&实践 - 数据结构 数据结构与算法 7
文章 发布于 2013年06月23日  阅读 646
1. 散列 hashing定义散列,又称哈希(Hash),是把任意长度的输入(又叫映射),通过散列算法,变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射。数组本身就是散列表(hash table)。理想的散列如果数组hashTable有10000个元素,则每个元素都对应于或映射到hashTable中唯一的一个元素,该元素引用相应的对象,则这是理想散列。完美的散列函数将每个查找键映射为...
文章 发布于 2013年06月22日  阅读 459
1. 词典 Dictionary定义词典,也称映射(map),表(table)或关联数组(associatearray),词典中每个元素都由两部分组成:一个关键字,通常称为查找键(search key);一个与该键值相关联的值。词典根据查找键来组织与区分它的元素,因此只要指定元素的查找键,就能从词典中检索或删除一个元素。词典中每个元素都具有一个查找键,虽然也可以将具有查找键的元素放入线性表,但线性...
文章 发布于 2013年06月22日  阅读 613
1. 堆Heap定义堆是一颗安全二叉树,其结点含有Comparable的对象。在最大堆中,每个结点的对象都大于等于它的子孙结点中的对象。public interface MaxHeapInterface> { public void add(T newEntry); public T removeMax(); public T getMax(); public boolea...
文章 发布于 2013年06月22日  阅读 483
1.树 Tree定义树是层次化的而非线性的。树是由显示结点间关系的边(edge)相联而成的结点(node)集合。如果树的每个结点都可以有任意数目子结点,则称为一般树。如果树中每个结点的子结点数目不超过n,则称为n叉树。如果树中每个结点只有两个子结点,则称为二叉树。从根开始,沿着连接结点的边从一个结点到另一结点,构成一条路径(path),顺着路径可以到达树中任何一个结点。根和其他任何一个结点之间的路...
文章 发布于 2013年06月21日  阅读 482
1. 队列Queue定义:队列又叫做FIFO(先进先出)表,即first-in,first-out现实中的队列——排队队列的接口public interface QueueInterface { /** * 将新元素插入队列后端 * @param newEntry 待插入的对象 */ public void enqueue(T newEntry); /** ...
文章 发布于 2013年06月20日  阅读 1109
1. 栈 List定义栈是限制插入和删除只能在一个位置上进行的表,该位置是表的末端,叫做栈顶。栈有时又叫做LIFO(后进先出)表,即last-in,first-out现实中的栈栈的接口public interface StackInterface { /** * 将新元素加到站定 * @param newEntry 带插入站的对象 */ public void push...
文章 发布于 2013年06月19日  阅读 1014
1. 链表一个链结点是某个类的对象,这个类叫做Link。每个Link对象中都包含一个对下一个链结点引用的字段(叫做next)。public class Link { public int iData; public double dData; public Link next;}它包含了一些数据和下一个链结点的引用。通常,用一个包含这些数据的类的对象来代替这些数据项。public...
共7条记录 共1页 上一页 首页 1 末页 下一页