- 博客(18)
- 收藏
- 关注
原创 浅谈设计模式
一、 单例模式 官方定义:Ensure a class has only onstance , and provide a gobal point of access to it.(确保毛一个类只有一个实例,而且自行实例化并向整个系统提供这个实例) 通俗说:在古代,一个国家只能有一个皇帝,皇帝每天要上朝接待臣子、处理政务,但皇帝是唯一的,我们就只有将构造函数设置为private私有反复权限...
2012-03-10 03:27:01
170
原创 自定义哈希表的性能评测
作为一个程序员或一个软件工程师,hash(散列)必然是熟解的。 对于百万级,甚至更多的数据的数据,我们如何实现存储并不太难,可我们要实现快速的增添查找删,显然普通的数组和链表是满足不了的。数组可以满足快速的查找,链表可以实现随意的删除,我们由此不难得到一种数据结构:数组挂链表的结构,称挂链式。 以一般的数据结构实现哈希过程,在实际中会遇到比较大的问题,我们在此选择使用挂链式,作为解决h...
2012-03-05 23:32:28
241
原创 浅谈蓝杰暑期培训
刚结束暑期培训也近一周了,东忙西搞的也没干什么正事,瞎忙了一顿,前天看起了黄仁宇的《黄河青山》,了解一番高人的见解。昨天接到胡(和谐)总的QQ信息,忽也觉得自己该停下来,总结一番了(套用胡(和谐)总的话)。 自从7月22日起,到长沙已一月有6了,回想起当时即将回长沙前和同学的谈话,都说我是发傻、脑子进水、自找苦吃的……我如今已能正面回应他们,我迈出了这一步,依然不能回头,我动摇过、迷茫过,可我却...
2011-08-28 01:28:57
1126
1
原创 哈夫曼压缩
一、压缩 思路:一个文件中,都会出现重复的字节,有些字节出现的次数多,有些字节出现的次数少,这样我们就可以根据出现次数的多少,构造哈夫曼树,并进行编码,出现次数越多的编码长度越短,出现次数越少的编码长度越长。而我们有知道一个英文字母占用一个byte,一个中文占用两个byte。我们将文件中的字节化为对应的编码后,形成01串,每次取八个01串写入压缩后的文件。因为编码的长度大多情况下都比文件中数据...
2011-08-14 12:44:49
217
原创 最优二叉树(赫夫曼树)的构建
一、构建最优二叉树 ①、节点类:五个属性:结点的数据、父结点、左子结点、右子结点、赫夫曼编码 /** * 树的结点类 * * @author lenovo * */ public class TreeNode { private Object obj; // 数据 private TreeNode parent; // 父结点 priva...
2011-08-11 19:23:07
749
1
原创 将数组用树有序表示及树的三种遍历
一、树的基本结构 树,是可以表示任意含有层次结构的数据结构。每棵树只有一个根结点,根结点下可以有任意的子结点,子结点又可以有任意个子结点,如此反复,若子结点下无子结点的子结点,则此结点称为叶,但每个结点只有一个父结点。 一下主要讨论的是二叉树,二叉树即每个结点最多有两个子结点。除根结点与叶结点外每个结点有父结点、子结点。对于构建一个二叉树的结点类,我们可定义四个属性,分别是:结点的数据、父...
2011-08-11 18:59:31
513
原创 自定义链表
链表是非连续、无顺序的数据结构,链表中元素与元素之间的内存地址没有顺序关系。链表由一个个结点组成,结点中存储两类信息,第一类是存储入结点的数据,第二类是结点的指向。链表分为单项链表,双向链表,环形链表,单项链表中只有一个结点指向,指向的的下一个结点的内存地址,只能单向移动,单项操作;双向链表有两个结点指向,一个指向上一个结点的内存地址(父结点),另一个指向下一个结点的内存地址(子结点),可以双向...
2011-08-09 23:01:17
142
原创 坦克大战游戏技术点总结(基于多线程)
一.游戏编写的背景 为加深对多线程的理解与运用,熟悉多线程的机制,编写了坦克大战这一个小游戏。其中实现了多个线程的控制及线程的监听功能。通过着以游戏的开发,确实加深了我对多线程的理解,也加深了对键盘监听机制、界面的熟悉,还有是双缓冲的学习与使用。 二.游戏截图 三.技术点 ①.多线程:敌方坦克由五个线程控制,还有一个监听线程,还有一个控制屏幕刷新的线程,还有若干...
2011-08-07 20:04:58
1714
原创 线程基础总结
1.单线程与多线的区别: 单线程的特点:调用的函数一个随另一个函数的结束二开始,如:public void A(){ B(); C();},必须得B函数结束后,C()函数才开始,即函数按顺序调用。 多线程的特点:让多个函数并行执行,故与之单线程比较,多线程的优点:并行执行 节省时间 2.线程、进程、程序的区别: 一个进程包含一个或者多个线程的运行;线程是系统分配CPU运...
2011-08-01 18:43:44
113
原创 简单画板的保存与读取
(文件数据的写入顺序要与读取顺序一致) 一.用自定义的队列保存图像与读取图像 由于在画图板上每画一种图形,就相当于在自定义的队列中装入此图形,那么在保存画图板图形时,就只需从自定义队列中获取每个图形的基本属性,如颜、点的坐标,图形的种类,然后将这些基本信息写入文件,存储到硬盘。不过先要写入图形的个数,方便打开时获得队列的长度。 打开保存的图形时,只需要定义一个自定义队列,在从保存...
2011-07-28 23:52:46
438
原创 java异常机制的理解
1.异常? 异常情况是指程序在运行时,可能由于外部系统的条件的改变而导致程序可能出错的情况。 2.异常的分类。 异常(Throwable):①错误:Error ②异常:<1>运行异常 <2>强制检测异常 3.一般解决异常的两种方法 ①try…catch机制: try { boolean b4 = fil...
2011-07-27 00:44:27
110
原创 文件搜索程序
基于文件的基本操作,编写了一个简单的文件搜索程序 1.界面 package fileFound; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.*; /** * 文件的查找登陆界面 * * @author...
2011-07-27 00:01:50
254
原创 文件统计器
基本对文件的基本操作,编写了一个简单的文件统计程序 1.界面 package fileCount; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.*; /** * 文件的统计登陆界面 * * @auth...
2011-07-26 22:35:20
134
原创 文件复制程序
基于对文件输入输出流的一些简单应用,编写了一个文件复制程序(提醒:单核CPU慎用,占用CPU太多) 以下是源代码: 1.界面 package file.iostream; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.*; ...
2011-07-26 21:02:11
242
原创 java集合框架--List、Set、Map
1.List:有序的 collection(也称为序列)。此接口可以对列表中每个元素的插入位置进行精确地控制。可以根据元素的在列表中的位置访问元素,并搜索列表中的元素。列表允许重复的元素。 ArrayList: 特点:有序的、线性的、无固定大小的、有下标的、先进先出 简单操作应用: public static void main(String args[]) { //...
2011-07-24 17:39:26
178
原创 几个关键字的总结
1.public: 同工程。声明为public属性的变量在同一个工程中都可以赋值与修改,方法在同一个工程中可以被重载、重写与调用。 protected:同一个包+子类。声明为protected属性的变量在同一个包中或继承其的子类中都可以赋值与修改,方法在同一个包中或继承其的子类中可以被重载、重写与调用。 默认:同一个包。声明为默认属性的变量在同一个包中都可以赋值与修改...
2011-07-23 21:49:14
122
原创 Java基础总结
1.java文件的基本结构 编译-->运行 1)编译:.java源文件-->Javac编译-->.class文件(二进制代码) 2)运行java程序-->Jvm装载文件-->Jvm运行类文件 2.java中的数据类型 1)基本数据类型 <1>.byte 字节型 8bits <2>.int 整...
2011-06-02 13:50:16
105
类的继承,接口
一.类的继承 1.继承的作用:当我们需要定义一个类,且这个类某部分属性与行为与之前所定义的一个类的属性与行为相同时,可以使用继承。这样我们就省去编写与之前定义的一个类相同的代码。继承的称为子类,被继承的成为父类。如:UNStudent(子类) 继承了 Student(父类)。 2.继承的方法:使用 extends 关键字。继承后,子类就自动具有了父类的属性和方法。一个对象只能调用在其...
2011-05-31 15:47:49
203
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人