自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

菜鸟的奋斗

小鸟飞啊飞。。。

  • 博客(37)
  • 收藏
  • 关注

原创 最小生成树

最小生成树POJ-1287-Networkinghttp://poj.org/problem?id=1287最小生成树问题,可用Prim算法,也可用Kruskal算法Prim算法是基于顶点来实现最小生成树,Kruskal算法是基于边来实现最小生成树Prime算法,用java写的import java.util.Scanner;//无穷大量class MAX{ s

2013-06-18 16:31:47 2528 1

原创 3子棋

写了个简易的3子棋,即X,O方轮流下棋,有三个棋子在一行一列或对角线即为获胜代码写的很挫,没有体现面向对象的思想,还待改进。。。import java.util.Scanner;class weizhi{ //输入棋子的位置,用一个整数返回 public int cmp(String s1) { if(s1.equals("A1")) return 0; if(s1.e

2013-06-16 10:48:04 2950

原创 内部排序

数据结构里学了好多排序的算法,现在来整理一下吧收集了几个排序算法的舞蹈,一起感受程序员的艺术吧插入排序:http://rrurl.cn/jgVFb1希尔排序:http://rrurl.cn/bk5ivP快速排序:http://rrurl.cn/sPoa91归并排序:http://rrurl.cn/bDwSo7下面用简易的代码实现各种排序的算法输入10个整形数并进行排序

2013-06-15 11:01:49 3041

原创 遗传算法解决TSP问题

遗传算法(Genetic Algorithm)是模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型,是一种通过模拟自然进化过程搜索最优解的方法遗传算法的基本运算过程如下:a)初始化:设置进化代数计数器t=0,设置最大进化代数T,随机生成M个个体作为初始群体P(0)。b)个体评价:计算群体P(t)中各个个体的适应度。c)选择运算:将选择算子作用于群体。选择的目的是把优

2013-05-26 17:09:43 67720 6

原创 启发式搜索解决8数码问题

启发式搜索就是在状态空间中的搜索对每一个搜索的位置进行评估,得到最好的位置,再从这个位置进行搜索直到目标。这样可以省略大量无谓的搜索路径,提高了效率。在启发式搜索中,对位置的估价是十分重要的。采用了不同的估价可以有不同的效果。8数码中的启发式函数h(x)为节点x的格局与目标格局相比数码不同的位置个数首先把初始节点S0放入open表中,然后每次从open表中取出未搜索过并且启发式函数值最小的

2013-05-26 09:49:53 6669 2

原创 文法的类型

Chomsky将文法分成4中类型文法G 定义为四元组(VN ,VT ,P,S)VN :非终结符集VT :终结符集P :规则集合S :开始符首先定义一个产生式α→β0型文法:α∈(VN∪VT)* ,且至少含一个VN,β∈(VN∪VT)*0型文法的能力相当于图灵机(Turing),或者说,任何0型语言都是递归可枚举的;反之,递归可枚举集必定是一个0型语言1型

2013-05-25 23:11:56 3392

原创 标准流,非标准流,盒子模型

标准流/非标准流流:在现实生活中就是流水,在网页设计中就是指元素(标签)的排列方式标准流:元素在网页中就像流水,排在前面的元素(标签)内容前面出现,排在后面的元素(标签)内容后面出现非标准流:当某个元素(标签)脱离了标准流(比如因为相对定位)排列,我们统称为非标准排列盒子模型在网页设计中,CSS盒子模型都具备的属性:内容(content),填充(padding),边框(bord

2013-02-24 18:03:11 5558 1

原创 行内元素和块元素

行内元素和块元素行内元素又叫内联元素,内联元素只能容纳文本或者其它内联元素常见内联元素,块元素一般都从新行开,可以容纳文本,其它内联元素和其它块元素,即使内容不能占满一行,块元素也要把整行占满常见块元素,块元素和行内元素的区别1行内元素只占内容的宽度,块内元素不管内容多少要占全行2行内元素只能容纳文本和其它行内元素,块内元素可以容纳文本,行内元素和块元素(与浏览器版本和

2013-02-22 17:51:22 2319

原创 CSS 选择器

首先介绍一下CSSCSS是英语Cascading StyleSheets(层叠样式表单)的缩写,它是一种用来表现HTML或 XML等文件样式的计算机语言CSS目前最新版本为CSS3,是能够真正做到网页表现与内容分离的一种样式设计语言,相对于传统HTML的表现而言,CSS能够对网页中的对象的位置排版进行像素级的精确控制,支持几乎所有的字体字号样式,拥有对网页对象和模型样式编辑的能力,并能够进

2013-02-20 20:01:29 3235

原创 HTML的表单元素

HTML的表单元素表单元素是允许用户在表单中(比如:文本域,下拉列表,单选框,复选框等等)输入信息的元素表单标签文本域(Text Fields)当用户要在表单中键入字母,数字等内容时,就会用到文本域单选按钮(Radio Buttons)当用户从若干给定的的选择中选取其一时,就会用到单选框复选框(Checkboxes)当用户需要从若干给定的选择中选取一个或

2013-02-18 20:10:36 19275

原创 HTML中的列表和框架

先来复习一下HTML中的表格标签,写一个简单的菜单表格菜谱菜谱素菜青菜土豆豆腐辣椒荤菜鲈鱼大虾海参鲍鱼网页打开如图所示HTML中的列表标签,HTML支持有序列表和无序列表无序列表是一个项目的列表,此列项目默认使用粗体圆点(典型的小黑圆圈)进行标记,也可以用其他图形进行标记无序列表始于标签,每个列表项始于有序列表也是一列项目,列表项目使用数

2013-02-17 19:47:23 6827

原创 初识HTML

HTML是超文本标记语言,是用于描述网页文档的一种标记语言超级文本标记语言是标准通用标记语言下的一个应用,也是一种规范,一种标准,它通过标记符号来标记要显示的网页中的各个部分,网页文件本身是一种文本文件,通过在文本文件中添加标记符,可以告诉浏览器如何显示其中的内容(如:文字如何处理,画面如何安排,图片如何显示等),浏览器按顺序阅读网页文件,然后根据标记符解释和显示其标记的内容,对书写出错的标记

2013-02-16 20:13:22 1964

原创 java applet 中的事件响应

Java.applet.Applet继承了java.awt.Container,作为容器,其中可以添加控件添加控件的方法有如下几种Component add(Component comp) Appends the specified component to the end of this container.Component add(Component co

2013-02-13 17:23:52 6303

原创 java applet

Java Applet就是用Java语言编写的小应用程序,它们可以直接嵌入到网页中,并能够产生特殊的效果applet经编译后,会产生.class的文件,把.class的文件嵌在html的网页中,只要用户连到一个网页里,applet便会随着网页下载到用户的计算机运行applet类的继承关系如下:java.lang.Object  java.awt.Component    jav

2013-02-12 21:04:27 18513

原创 java中包的使用

Java允许把多个类收集在一起构成为一组,称作包(package),包便于组织任务,以及使自己的任务和其他人提供的代码库相分离包是一种组织类的方式,包中可以包含任意数量的类,一般包中的类的用途是相关的Java中用package语句来将一个Java源文件中的类打包一个包,package语句作为Java源文件的第一条语句,指明该文件中定义的类所在的包,(若缺省该语句,则指定为无名包),它的格式

2013-02-06 18:07:38 8454

原创 java的异常处理

Java中的异常用对象来表示,Java对异常的处理是按异常分类处理的,不同异常有不同的分类,每种异常都对应一个类型(class),每个异常都对应一个异常(类的)对象下面是这几个类的层次图:java.lang.Object  java.lang.Throwable    java.lang.Exception      java.lang.RuntimeException

2013-02-06 17:02:17 3264

原创 将成员函数写成类,从而实现扩展

将成员函数写成类,从而实现扩展先看下面这段代码class visitor{ public void visit(menu m) { }}class move extends visitor{ public void visit(menu m) { m.x=m.x+100; System.out.println(m.x); }}class tools {

2013-02-03 17:07:51 2003

原创 java 类的继承

子类的声明class 子类名 extends 父类名{ 成员变量 成员函数}注意:当子类的成员变量和父类的成员变量同名时,就产生了变量覆盖的问题,变量的覆盖与变量的类型无关只与变量名相关,当子类执行继承自父类的方法时,处理的是父类的成员变量class cam0{ double size=0; void printsize() { Sys

2013-02-01 14:33:40 1859

原创 java 类的声明

类具有封装性,继承性,多态性封装性体现了细节的隐藏和权限的控制,继承性体现了类的层次结构,多态性体现了方法名相同而实现却不同java中类的声明形式如下[修饰符]class 类名[extends 父类] [implements 接口名]{属性(成员变量)->基本数据类型,对象操作(成员方法)->函数}类声明中的修饰符有public,abstract,final注意:应用

2013-02-01 13:43:50 15964 2

原创 java中的静态类初始化器与终结器

静态类初始化器static{//语句}静态类初始化器没有返回值,没有参数,其中的变量必须是static型的静态成员变量和静态初始化块级别相同public class Test { public static int i; static { i = 10; } } public c

2013-01-31 21:15:01 5836

原创 java中的关键字super

super表示当前对象的父类对象的一个引用下面简单说下super的几个应用super可以调用当前对象的父类对象的方法class cam0{ double size=10; void printsize() { System.out.println(size); }}class cam1 extends cam0{ double size=20; void pri

2013-01-31 19:47:06 16311 2

原创 java中的关键字this

this表示当前对象的一个引用下面简单说下this的几个应用this可以调用当前对象的方法class cam1{ void print() { System.out.println("aaa"); } void printsize() { this.print(); }}public class cam2{ public static void main(

2013-01-31 17:58:11 1232

原创 Winform连接数据库并实现用户登录

首先介绍一下SqlConnection类SqlConnection类表示一个到SQL Server数据库的打开的连接,此类不能被继承SqlConnection类的构造函数有如下3个SqlConnection:初始化 SqlConnection 类的新实例。 SqlConnection(String):如果给定包含连接字符串的字符串,则初始化 SqlConnection 类的新实例。

2012-12-26 18:23:43 19509 3

原创 Bezier曲线的绘制

Bezier曲线是参数多项式曲线,它由一组控制多边形折线(控制多边形)的顶点唯一定义,在控制多边形的各顶点中,只有第一个和最后一个顶点在曲线上,其他的顶点则用以定义曲线的导数,阶次和形状Bezier曲线的数学基础是能够在第一个和最后一个顶点之间进行插值的一个多项式混合函数,对于有n+1个控制点的Bezier曲线段用参数方程表示如下:式中pk(xk,yk,zk),k=0,1,2…..

2012-12-25 17:18:47 21694 4

原创 main函数的参数

指针数组的一个重要应用是作为main函数的形参,例如void main(int argc,char *argv[])argc和argv就是main函数的形参,main函数是由操作系统调用的,当处于操作命令状态下,输入main所在的文件名(经过编译,连接后得到的可执行文件,后缀为.exe),操作系统就调用main函数,实参和命令一起给出的,也就是在一个命令行中包括命令名和需要传给main函数的参

2012-12-24 20:05:20 906

原创 图形的一点透视和平移

一点透视一点透视只有一个主灭点,进行透视投影时,需要很好地考虑图面布局,以避免三维形体的平面或直线积聚成直线或点而影响直观性。具体而言,就是要考虑一下三点:三维形体与画面(投影面)的相对位置视距,即视点(投影中心)与画面的距离视点的高度为简述方便,假定视点(投影中心)在Z轴上(z=-d处),画面(投影面)在xoy面上,一点透视的步骤如下:将三维形体平移到适当位置l,m,n

2012-12-21 00:15:22 4322

原创 相对任一参考点的二维几何变换

相对任一参考点的二维几何变换如需要相对于某个参考点(x,y)作二维变换,其基本思想是,将图形经过平移,使参考点与原点重合,此时相对于参考点的变换变成相对于原点的基本几何变换,最后再平移,使参考点回到原来的位置比例变换的齐次坐标计算形式如下:二维图形绕原点顺时针旋转θ角的齐次坐标计算形式如下:(Mathtype中,按住Shift和Ctrl,再按空格键,即可添加

2012-12-13 17:38:43 2813

原创 边缘填充算法

多边形的区域填充:边缘填充算法边缘填充算法的基本思想是,逐边向右求补。可以按任意顺序处理多边形的每条边,在处理每条边时,首先求出该边与扫描线的交点,然后将每一条扫描线上交点右方的所有像素取补,多边形的所有边处理完毕之后,填充即完成#include#include#include#include#include#include#define N 100000#define Mi

2012-12-10 12:56:43 10974 3

原创 直线的画法

直线绘制的方法有很多,下面介绍常用的两种,DDA算法和中点Bresenham算法DDA算法的原理是,由于直线的一阶导数是连续的,而且Δx和Δy是成比例的,因此可以通过在当前位置(xi,yi)分别加上两个小增量ε*Δx和ε*Δy来求出下一点的x,y坐标该方法在精度无限高的情况下可绘出无误差的直线,但设备的精度是有限的,因此通常选择ε=1/max(|Δx|,|Δy|)下面模拟实现D

2012-12-07 11:34:58 2611 1

原创 对象序列化

一个类要具有可序列化的特性就必须实现接口java.io.Serializable,对于可以序列化的对象可以用类java.io.ObjectOutputStream来输出对象,而且可以用类java.io.ObjectInputStream来读入该对象下面新建一个用户类的对象,用相应信息进行初始化,在程序中使用对象序列化将其保存到某个文件中,然后从该文件中读出此对象并显示有关用户信息首先建一个

2012-12-06 12:58:53 677

原创 在指定路径下的所有文件中查找给定的字符串

先简单说下File类File类的对象主要用来获取文件本身的一些信息,如文件所在的目录、文件长度、文件读写权限等,不涉及对文件的读写操作创建java.io.File的实例对象,可以通过java.io.File的构造方法public File(String pathname)来实现,其中pathname指定文件名或路径名Java.io.File的成员方法public boolean e

2012-12-02 01:08:46 2792

原创 虚拟存储器管理-模拟分页请求和缺页调度

虚拟存储器管理-模拟分页请求和缺页调度请求分页系统虚拟存储技术是把作业地址空间的全部信息放在磁盘上,当作业被选中运行时,先把作业的开始几页装入主存并启动运行。为此在为作业建立页表时,应说明哪些页已经在主存,哪些页不在主存,页表如图所示假定主存的每块长度为64个字节,现有一个8页的作业,系统为其分配了4个主存块,其中第0至第3页已经装入主存标志表示对应页是否已经装入内存,1表

2012-12-01 15:28:44 5304

原创 将数据写入文件

将数据写入文件采用类java.io.FileOutputStream将数据写入文件1创建类java.io.FileOutputStream的实例对象,以获得相关的文件资源2通过类java.io.FileOutputStream的write成员方法将数据写入文件;在这中间还可以通过类java.io.FileOutputStream的flush成员强制输出3调用java.io.File

2012-11-30 13:16:32 3183

原创 动态分区分配-首次适应算法

动态分区分配-首次适应算法动态分区分配是根据进程的实际需要,动态的为之分配内存的空间。首次适应算法,要求空闲分区链以地址递增的次序链接,在分配内存时,从链首开始顺序查找,直到找到一个大小能满足要求的空闲分区为止,然后再按照作业的大小,从该分区中划出一块内存空间分给请求者,余下的空闲分区仍停留在空闲链中。当进程运行完毕释放内存,系统根据回收区的首址,从空闲区链表中找到相应的插入点,此时可

2012-11-29 13:37:24 27527 2

原创 输入输出流

C++中不仅可以继续使用C语言中以printf,scanf为代表的库函数实现输入输出,更引入了流的概念来丰富输入输出的操作方式,流就是数据流,及字符序列在主机和外部介质之间的流动。流在C++中被定义为类,cin和cout是iostream类的对象,cin从标准输入设备上读入数据,cout在标准输出设备上显示数据或向内存缓冲区中写入数据,iostream类库对>进行了重载,分别作为输出运算符和输

2012-11-29 12:58:41 807

原创 编程中无穷大的设定

编程中无穷大的设定很多人可能设为0x7fffffff,这个数的确是32-bit int的最大值,符号位为0,其他的都是1但在很多情况下,0x7fffffff会出现错误,比如溢出,这样两个无穷大数相加会变成负数,还有如在做dijkstra求最短路时,当做松弛操作,判断if (d[u]+w[u][v]为了尽量避免以上的错误,我们可以改变无穷大的设定,可以将0x3f3f3f3f设为无穷大,0

2012-11-29 12:38:00 5810 2

原创 HDU-4463-Outlets

HDU-4463-Outletshttp://acm.hdu.edu.cn/showproblem.php?pid=4463已知两点相连,求最小生成树,第一次参加现场赛,各种悲剧。。。这题是我敲的,调试了半天才过。。。菜鸟伤不起哇。。。#include#include#include#include#define N 100struct node{ int x; int

2012-11-29 12:28:35 685

空空如也

空空如也

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

TA关注的人

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