自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

存储超过内存大小的数据

  问题是这样的:如何存储5亿个正整数,并对这些数据进行排重。  直接用一个长度为5亿的int型数组存起来?这显然是不可能的,让我们来计算一下:  一个int型数据占用4byte,5亿个正整数也就是1.6*10^10bit,约为16G,16G的数据全存在内存里,内存显然不够用。那么,如何才能缩小占用空间呢?  再回到问题上看看,问题要求对数据进行排重,在用int存储的情况下,这5亿个数...

2013-10-13 10:34:54 445

哈弗曼树及哈弗曼编码简述

  哈弗曼树是一种特殊的二叉树。  [b]定义:[/b]  构造一棵二叉树,若该二叉树的带权路径长度为最小值,则此二叉树可称为哈弗曼树。  [b]解释:[/b]  带权路径长度:树中各叶结点到根结点需要经过的最短层数与该结点上权值的乘积之和。  [b]构造方法:[/b]  若有n个权值,则构建成功的哈弗曼树有n个叶结点。取n个结点中权值最小的两个合并,作为一棵新树的左右子树,新树根结点...

2013-08-18 17:13:48 358

原创 滑杆组件的应用实例

滑杆JSlider类是让用户能够通过滑块的滑动来改变选择值的组件。 与JLabel、JButton相似,JSlider也可以作为小组件放置在面板上。下面以用滑杆改变颜色使画出的图像动态变化为例,说明滑杆的使用。 在这个程序中,我们需要4个类:一个面板类三个监听器类。 面板类: 面板最好分成左右两块,左边放置需要的小组件(按钮、标签、滑杆),右边作为绘画区域。 ...

2013-08-15 14:16:32 1133

原创 简单分形(谢尔宾斯基三角形和地毯)

对于分形,我的理解就是:由小元件组成整体,然后再用另一或相同整体替换元件形成的循环迭代图形。 下面以谢尔平斯基三角形为例,介绍下最简单的分形思路。 第一步,先构造一个正三角形,取正三角形三边中点并连线,形成一个内置倒三角形,然后把周围3个三角形又分别作为一个基元重复上述操作,多迭代几次就成了第三个图的样子。        界面初始代码如下:import java.awt.Graphics;...

2013-06-25 11:05:53 2567

原创 用数组/链表实现的队列

在之前的重绘中,用到了数组来传递数据,但是这个数组只能用于某种特定情形中,如果要存入别的数据,就又要定义新的数组了,这样既麻烦又耗时。为了使用方便,我们可以定义一个通用的存储数据的结构,使用时只需更改传入对象的类型就好。这样一个用来存储数据的通用结构就是队列,队列中一般有几种基本的方法:数据对象的添加、插入、删除、获取、队列长度的获取。 有两种基本的实现队列的方法: 用数组实现的队列和用链表...

2013-04-22 16:30:43 199

原创 事件机制与简单画板

一、事件机制1、事件参与者 事件机制的参与者有三个:事件源,监听器方法(事件类型),事件的处理者。 事件源:事件源是发起动作的对象,java中所有的图形界面组件都可以成为事件源对象。 监听器方法:监听器方法监听某个对象,一旦它发起监听器可识别的动作,监听器方法产生反馈信息。Java中有4种常用的监听器:ActionListener()、 MouseListener()、Mous...

2013-04-09 16:18:05 137

原创 QQ界面和计算器界面

在前面简单登录界面实现的基础上更进一步,尝试实现QQ登录界面。首先打开新版QQ的登陆界面,可以发现它有着典型的边框布局特点。一整块的背景,我们暂时不能实现,可当成是北边的部分;西边是我们的头像显示;中央为账号密码输入框及两个复选框;南边是一个登录按钮。 由于目前水平有限,暂时采取截图的方法实现,尽量与QQ保持一致。 北边与西边类似,可用一个JLabel对象来显示一张图片,但是在这之前要...

2013-04-06 22:48:30 219

原创 简单登陆界面的实现

要用java实现一个简单登陆界面,首先应该来了解下java中有关图形界面的工具。 Swing开发: 一、java图形界面的分类 1、awt:在jdk 1.4之前一般使用awt,优点是功能强大,使用方便。缺点是跨平台性不好。一般通过包名(java.awt.*)来调用其中的方法。 2、swing:在jdk 1.4之后出现,有着良好的跨平台性,但是在有些方面的功能不如awt.一般通过...

2013-04-06 19:00:24 328

原创 类与对象

1、类与对象: 类是有某些相同性质的事物的集合,如:汽车,书籍。 对象则是指某一个具体的事物,如属于你的电脑就是一个对象。对象是基于类来定义的。 对对象的描述包括对对象的属性及方法的描述,对象的属性即对象固有特质,如该对象的名称,形状,体积,颜色等等。而对象的方法是指对象所能执行的行为或被执行的行为,如一台台灯可以执行照明,开...

2013-03-22 00:02:41 127

类的继承,接口及抽象类

一、类的继承1、什么是类的继承? 类的继承就是某一个类可以通过extends关键字继承另一个类中的方法和属性。2、为什么要进行类的继承? 有时我们要定义一个新的类,可能会发现这个类中的属性和方法有很大一部分就是我们在另外一个类中定义的全部属性和方法。这时重新再输入一次未免有些费事费力,而使用继承的话,则可以省去这一步。在编程过程中,继承可以为我们省下很多事。3、继承的语法格式...

2013-03-21 23:08:18 178

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除