前面分别通过C和C++实现了哈夫曼树,本章给出哈夫曼树的java版本。目录 1.
哈夫曼树的介绍 2. 哈夫曼树的图文解析 3. 哈夫曼树的基本操作 4. 哈夫曼树的完整源码
转载请注明出处:http://www.cnblogs.com/skywang12345/更多内容:数据结构与算法系列 目录....
分类:
编程语言 时间:
2014-05-09 18:13:10
阅读次数:
501
1.
存分配的三个方法:(1)从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static变量。(2)在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中...
分类:
其他好文 时间:
2014-05-09 16:33:10
阅读次数:
430
1.
HashMap概述:HashMap是基于哈希表的Map接口的非同步实现。此实现提供所有可选的映射操作,并允许使用null值和null键。此类不保证映射的顺序,特别是它不保证该顺序恒久不变。2.
HashMap的数据结构:在java编程语言中,最基本的结构就是两种,一个是数组,另外一个是模拟指针...
分类:
编程语言 时间:
2014-05-09 12:22:37
阅读次数:
478
进程 OS并发的一个任务CPU分时间片交替执行 宏观并行
微观串行线程:在一个进程中并发的一个顺序执行流程线程的组成:1.数据 堆空间共享 栈空间独立 2.CPU3.代码Thread 线程对象 继承Thread类型
覆盖run方法 直接创建Thread对象实现Runnable接口...
分类:
编程语言 时间:
2014-05-08 22:10:57
阅读次数:
357
#include using namespace std;void BubbleSort(int*
a,int n){ for(size_t i=0;i a[j+1]){ int tmp = a[j]; a[j] = a[j+1]; ...
分类:
其他好文 时间:
2014-05-08 21:59:19
阅读次数:
264
今天在编译程序时遇到“0x00e304f7 处有未经处理的异常: 0xC00000FD: Stack
overflow”的错误,也就是栈溢出了,google了一下,原来是我申请的一个变量太大了,const int maxnum = 10000;
改小一些就好了。局部变量的定义是在栈中申请空间的,栈溢...
分类:
其他好文 时间:
2014-05-08 19:53:07
阅读次数:
268
Collection |--List:元素是有序的,元素可以重复。因为该集合体系有索引。
|--ArrayList:底层的数据结构使用的是数组结构。特点:查询速度很快。但是增删稍慢。线程不同步。
List集合特有的迭代器。ListIterator是Iterator的子接口。 ...
分类:
其他好文 时间:
2014-05-07 19:35:32
阅读次数:
306
西方有句谚语:不要重复发明轮子!STL几乎封装了所有的数据结构中的算法,从链表到队列,从向量到堆栈,对hash到二叉树,从搜索到排序,从增加到删除......可以说,如果你理解了STL,你会发现你已不用拘泥于算法本身,从而站在巨人的肩膀上去考虑更高级的应用。排序是最广泛的算法之一,本文详细介绍了ST...
分类:
其他好文 时间:
2014-05-07 18:11:56
阅读次数:
465
前一篇写了二叉树的先序遍历,本篇记录一下二叉树的中序遍历,主要是非递归形式的中序遍历。由于距离上篇有好几天了,所以这里把二叉树的创建和存储结构也重复的写了一遍。二叉树如下二叉树的存储方式依然是二叉链表方式,其结构如下typedef
struct _tagBinTree{ unsigned ch...
分类:
其他好文 时间:
2014-05-07 10:17:50
阅读次数:
335
以数列 14,11,25,37,9,28
为例,详细描述执行一趟快速排序的算法:1,选择待排序数列的枢轴,一般以数列的首元素作为枢轴.此数列中,我们选择首元素14作为枢轴,nPivot =
14.2,设定两个指针 i 和 j ,分别指向数列的首元素和尾元素. i 指向首元素14, j 指向尾元素2....
分类:
其他好文 时间:
2014-05-07 09:56:54
阅读次数:
249