自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 OJ用java时总出现Time Limit Exceeded原因之一

在刷OJ题时遇到了一个题,无论怎么优化,仍然超时,最后把输出语句换成了append();如下:StringBuilder sb = new StringBuilder();for (Student std : students) { sb.append(std.num).append(" ").append(std.name).append(" ").append(std.grad

2017-01-14 18:15:25 3065

原创 java栈+队列实现简单的停车场管理问题

问题描述设有一个可以停放n辆汽车的狭长停车场,它只有一个大门可以供车辆进出。车辆按到达停车场时间的早晚依次从停车场最里面向大门口处停放(最先到达的第一辆车放在停车场的最里面)。如果停车场已放满n辆车,则后来的车辆只能在停车场大门外的便道上等待,一旦停车场内有车开走,则排在便道上的第一辆车就进入停车场。停车场内如有某辆车要开走,在它之后进入停车场的车都必须先退出停车场为它让路

2016-11-02 11:58:20 7919 2

原创 java实现优先级队列

优先级队列是一种带有优先级的队列,我们约定关键字最小的数据元素具有最高的优先级,且总是排在队首。在优先级中的数据元素也不仅仅限制在队尾进行,而是顺序插入到合适的位置,以确保队列的优先级顺序。用到了之前写的结点Node类队列接口:package queueTest;public interface IQueue { public void clear(); public b

2016-10-31 20:48:00 779

原创 Java队列递归求解素数环问题

思路:1.创建顺序表SqList的对象L,用于存放素数环中的数据元素;创建链队列LinkQueue对象Q,用于存放还未加入到素数环中的元素。2.初始化顺序表L和队列Q:将1加入到顺序表L中,将2~n的自然数全部加到Q队列中。3.递归,将出队的队首元素p与素数环最后一个数据元素q相加,若两数之和是素数而且p不是队尾元素,则将p加入到素数环中;否则说明p暂时无法

2016-10-31 19:16:26 3294

原创 Java实现简单的贪吃蛇

这两天学着做了一个简单的贪吃蛇,只是为了练习用,所以很多地方都不完美实现方式是用链表活动区域Yard:import java.awt.Color;import java.awt.Font;import java.awt.Frame;import java.awt.Graphics;import java.awt.Image;import java.awt.event.

2016-10-30 23:06:44 26814 4

原创 数据结构链队列java实现

相对比较简单,用到了之前写过的结点类,包含数据域和指针域代码如下:接口:package queueTest;public interface IQueue { public void clear(); public boolean isEmpty(); public int length(); public Object peek();// 取队首元素 publi

2016-10-26 12:15:29 1046

原创 数据结构循环队列Java实现

顺序队列实行先进先出的原则,需要加上front和rear两个变量分别指示队首和队尾在数组中的位置,初值为0。在非空队列中,front指向队首元素,rear指向队尾元素的下一个存储位置。由于顺序队列中会产生假溢出的情形,例如一个有6个存储空间的队列存满,并且出队2次之后,我们无法在第七个存储空间继续入队,但实际上此队列在前方仍然有两个空余的存储空间。解决这个问题,最好

2016-10-26 12:12:58 2215

原创 Java链栈实现两个大数加法

整数是有上限的,所谓大数,是指超过整数最大上限的数,例如18452545389943209751345473,它是无法用整数变量来保存的。为解决两个大数求和问题,可以把两个加数看成是数字字符串。由于最先写的高位反而最后运算,满足栈先进后出的特性,因此选择用栈来解决这个问题。操作步骤如下:1)将两个加数的相应位从高位到低位依次压入栈sA和sB中。2)若两个加数栈都

2016-10-25 17:41:59 891

原创 Java泛型深入(一)

泛型的实质:允许在定义接口,类,方法时声明类型形参,这个类型形参将在声明变量,创建对象,调用方法时动态的指定,几乎所有可使用普通类型的地方都都可以使用这种类型形参。例如 Java5改写后的List接口:

2016-10-24 22:19:03 360

原创 Java栈实现判断分隔符是否匹配

思路:一个匹配的分隔符可以被其他分隔符分开,即分隔符允许嵌套。因此,一个给定的右分隔符只有在其前面的所有右分隔符都匹配上之后才能进行匹配。可见,最先进的左分隔符在最后才能进行匹配,与栈式存储结构先进后出的特性吻合,故采用栈。算法:从左到右扫描语句,每次读取一个字符,若发现他是左字符,则压入栈中;当读到一个右字符,则弹出栈顶的左分隔符,并且查看它是否和右分隔符相匹配,

2016-10-23 18:32:30 1620

原创 Java泛型入门

一.为什么要出现泛型Java集合有一个缺点——把一个对象丢进集合里之后,集合就会忘记这个对象的数据类型,当程序从集合中取出对象之后,当再次取出该对象时,该对象的编译类型就变成了Object类型(其运行时类型没变)。集合的设计者把集合设计成能保存任何类型的对象,是要求拥有更好地通用性,但却带来了以下问题:1.可能会引发一些问题,例如:想创建一个只能保存Dog类型的对象,但程序也可以轻

2016-10-23 15:20:46 285

原创 Java实现链栈

用到了之前链表写的结点类,可以在前面的文章中找到,只是定义了数据域和指针域,这里不再写了接口类:package com.stack;import sun.reflect.generics.tree.VoidDescriptor;public interface IStack { public void clear(); public boolean isEmpty(); pu

2016-10-22 18:33:42 588

原创 Java实现顺序栈

接口类:package com.stack;import sun.reflect.generics.tree.VoidDescriptor;public interface IStack { public void clear(); public boolean isEmpty(); public int length(); public Object peek();//取栈顶

2016-10-22 18:30:53 1470

原创 Java链表练习实现一元多项式的加法

链表的实现在之前写过了,就不再写了将链表的数据域赋值为多项式结点类多项式结点类:package polynomialOfOneIndeterminate;public class PolynNode { public double coef;//系数 public int expn;//指数 public PolynNode(double coef,int ex

2016-10-21 22:56:09 3338 2

原创 Eclipse常用快捷操作

这里只列出了我认为常用的快捷键,没能帮到你,我深感抱歉大多数快捷键在Windows下对应Ctrl键,在苹果中对应Cmd键1.快捷修复:Ctrl+12.快捷删除行:Ctrl+D3.自动跳到下一行:当本行很多代码时,需要向右拉动才能移动光标到下一行,用Shift+Enter可以解决这个问题4.快速运行项目:Ctrl+F115.快速移动行:将某一行移动到上面或下面,Alt

2016-10-21 19:47:57 504

原创 数据结构之循环双向链表java实现

package linearList;import java.util.Scanner;import sun.net.www.content.text.plain;import sun.rmi.runtime.Log;public class DuLinkList implements ILiist{ public DuLNode head; //双向循环链表的头结点 publ

2016-10-18 21:35:03 1159

原创 Java链表实现删除重复结点以及合并链表(非递减)

Java链表已在上一篇文章写出,不再赘述1.删除重复结点:1)思路:从单链表的首结点开始依次将单链表中每一个结点与他的后面的所有节点相比较,若遇到相等的,则将此结点从链表中删除,当对每个结点都处理完后,算法结束2)实现:package test;import linkList.LinkList;import linkList.Node;public class D

2016-10-17 20:10:32 914

原创 Java之正则表达式入门理解

字符串处理利器:正则表达式正则表达式:具有特殊意义的字符串,我们说某个字符串匹配某个正则表达式,通常是指这个字符串里有一部分(或几部分分别)能满足表达式给出的条件。(本文不介绍各种符号代表的意思以及各函数,只是希望能够帮助初学者理解正则表达式的作用和用法)1.正则表达式用途:字符匹配(例如:IP地址是否正确),字符串查找(例如:从网页中寻找email地址

2016-10-14 00:03:44 307

原创 Java之BigDecimal类

一般来说,一提到Java里面的商业计算,我们都知道不能用float和double,因为这两种基本浮点类型容易引起精度丢失。例如下程序:package bigDecumal;public class DoubleTest { public static void main(String[] args) { System.out.println("0.06+0.01:

2016-10-12 12:03:06 570

原创 数据结构之链表Java实现

接口:package linearList;import org.omg.CORBA.OBJ_ADAPTER;public interface ILiist { public void clear();// 置空表 public boolean isEmpty();// 是否为空 public int length();// 数据元素个数 public Object ge

2016-10-11 23:19:41 595

原创 数据结构之顺序表Java实现

元素默认为char类型,代码中有详细注释,可编译运行接口:package linearList;public interface ILiist { public void clear();// 置空表 public boolean isEmpty();// 是否为空 public int length();// 数据元素个数 public char get(int i)

2016-10-10 20:38:18 1158

原创 Javaz之枚举类

在某些情况下,一个类的对象是有限定而且固定的,比如季节类,只有春夏秋冬四个对象。这种实例有限而且固定的类被称为枚举类。Java5新增了一个enum关键字用以定义枚举类,枚举类是一种特殊的类,一样可以有自己的成员变量,方法,可以实现一个或多个接口,可以有自己的构造器。枚举类与普通类的区别:1.enum定义的枚举类默认继承了java.lang.Enum类,而不是默认继承Object

2016-10-04 13:48:45 384

原创 Unity实现物体逐渐消失(逐渐出现)

原理很简单,就是通过改变目标物体的Alpha值。但是要求材质的类型是Transparent/Diffuse有用的地方在代码中标注了,直接贴代码using UnityEngine;using System.Collections;public class Fade : MonoBehaviour{ float tempTime; void Start() {

2016-10-03 15:32:47 23752 2

原创 Java之匿名内部类

顾名思义,没有名字的内部类。表面上看起来它们似乎有名字,实际那不是它们的名字。匿名内部类适合创建那些只需要一次使用的类,创建匿名内部类是会立即创建一个该类的实例,这个类定义立即消失,匿名内部类不能重复使用。定义匿名内部类的格式:new 实现接口()||父类构造器(实参列表){  //匿名内部类的实体部分}定义匿名内部类无需使用class关键字,而

2016-10-03 11:02:54 240

原创 Java之内部类

在某些情况下,会把一个类放在另一个类的内部定义,这个定义在其他类内部的类被称为内部类。内部类的作用:1.内部类提供了更好地封装,可以把内部类隐藏在外部类之内,不允许同一个包中的其他类访问该类。2.内部类可以直接访问外部类的私有数据(因为内部类被当成外部类成员,同一个类的成员变量之间可以相互访问)3.外部类不能直接访问内部类成员 (1)如需访问非静态内部类成员,则必须显示

2016-10-03 09:27:38 208

原创 Java之接口

一种更加特殊的“抽象类”:接口接口是把隐式公共方法和属性组合起来,以封装特定功能的一个集合。一旦类实现了接口,类就可以支持接口所指定的所有属性和成员。接口定义了某一批类所需要遵循的规范,接口不关心这些类的内部状态数据,也不关心这些类方法里的实现细节,他只规定这批类里必须提供哪些方法。接口的使用规则:1.接口的修饰符可以是public或者省略,如果省略了public访问控

2016-10-01 11:03:15 317

原创 Unity插件NGUI实现背包系统

三十 背包系统的制作1 创建一个Sprite作为背景图片2 创建一个Sprite作为格子并保存为Prefab3 在格子下创建Sprite作为物品4 在物品下创建Label用来显示物品个数5 把物品做成Prefab 7 给物品添加Box Collider8 创建脚本继承UIDragDropItem指定给物品using UnityEngine;using Sys

2016-10-01 10:30:26 1094

原创 Unity插件NGUI实现技能冷却效果

二十一 技能CD冷却效果1 创建一个Sprite1作为技能图标,创建一个文字子物体作为快捷键2 再建立一个Sprite2作为Sprite1的子物体,设置成Sprite1的大小3 将Sprite2的Type设为Filled,此时调节Fill Amount可显示出类似效果,改变Sprite的颜色与透明度4 创建一个脚本指定给Sprite1脚本设计如下:using UnityEn

2016-10-01 10:24:13 1448

原创 Unity插件NGUI学习笔记(二)

五Button按钮与事件监听例 对Label加按钮 1 UIRoot/Create/Label 2 Label/Attach/Box Collider 3 Label/Attach/Button Script 4创建一个脚本以便检测是否拥有按钮功能using UnityEngine;using System.Collections; public class B

2016-10-01 10:19:36 493

原创 Unity插件NGUI学习笔记(一)

整理的时候发现了自己当初学习NGUI时候的笔记,把他贴上来保存,也希望能对大家有所帮助NGUI版本:v3.6.8          一  NGUI的导入与初始设定导入 1注意文件夹中不要存在中文名 2导入几分钟之后状态栏将增加“NGUI”这个选项(不经常使用)设定 NGUI/Option/Reset Prefab Toolbar(NGUI/选项/重置 预制键 工具栏

2016-10-01 10:02:34 496

原创 Java抽象类abstract

在某些情况下,某个父类只是知道其子类应该包含怎样的方法,但无法准确地知道这些子类如何实现这些方法,我们将该应用到抽象类。抽象类通常代表一个抽象概念,是从多个具体类中抽象出来的父类,具有有更高层次的抽象,他提供给一个继承的出发点,当设计一个新的抽象类时,一定是用来继承的,所以,在一个以继承关系形成的等级结构里面,树节点应该是具体类,树枝节点应是抽象类,抽象类应该拥有尽可能多的共同代码,拥有尽可能

2016-10-01 09:53:50 266

原创 Java单例类

在某些时候,允许其他类自由创建某类的对象没有任何意义,还可能造成系统性能下降(因为频繁的创建对象,回收对象造成的系统开销问题)。这时我们要求一个类始终只能创建一个实例,不允许自由创建该类的对象,则称这个实例为单例类。1.为避免其他类自由创建该类的实例,应该把该类的构造器使用private修饰,从而把该类的所有构造器隐藏起来。2.根据良好封装原则,一旦把该类的构造器隐藏起来,就需要提供有一个

2016-09-28 21:02:12 325

原创 Java中==和equals方法

Java有两种方式来测试两个变量是否相等:一种是利用==运算符,另一种是利用equals()方法一.==运算符   当使用==来判断两个变量是否相等时 1.如果两个是基本类型变量,且都是数值型(不一定要求数据类型要严格相同),只要两个变量的值相等,就将返回true。例如: int it=65; float fl=65.0f; //将返回tr

2016-09-27 12:09:17 476

原创 Unity实现类似我的世界(Minecraft)的创建物体以及销毁物体的功能

最近想做一个类似Minecraft的游戏,我觉得最基本也是有难度的是点击在一个已有Cube的某侧,然后在该物体相应的一侧生成Cube下面是我学习到的生成的方法,但是有一个地方我觉得多余,贴下来和大家分享和交流void Shoot1 () {//点击鼠标左键销毁Cube,右键生成Cube //从摄像机到鼠标点击位置生成射线 RaycastHit hit =

2016-09-26 13:26:48 5937 4

原创 Java中构造器间的调用

如果是两个方法之间存在包含关系,则可以在方法B中调用方法A。但构造器中不能直接调用,构造器必须使用new关键字来调用。可是一旦使用new关键字来调用构造器,将导致系统重新创建一个对象。为了解决这个问题,可以使用this关键字来调用相应的构造器。例如:package structurerOverride;public class Apple { public Str

2016-09-22 18:19:37 4163

原创 Java方法的参数传递机制

Java方法的参数传递方法只有一种:值传递。所谓值传递,就是将实际参数的额副本传入方法,而参数本身不会受任何影响。当系统开始执行方法时,系统为形参执行初始化,就是把实参变量的值附给方法的形参变量,方法里操作的并不是实际的实参变量。

2016-09-22 08:10:14 287

原创 Java中对象的this引用

Java中提供了this关键字,this关键字总是指向调用该方法的对象。根据this出现位置的不同,this作为对象的默认引用有两种情形:a.构造器中引用该构造器正在初始化的对象eg:public class TestThis{ private int i; public TestThis(int i){ this.i = i; }}b

2016-09-21 23:09:50 4371 1

原创 Java关键字static小结

static是一个特殊的关键字,可用于修饰成员变量,方法,初始化块,内部类(包括接口,枚举)。static修饰的成员表明它属于这个类本身,而不属于该类的单个实例,因此通常把static修饰的成员变量和方法也称为类变量,类方法。不使用static修饰的则属于该类的某个实例,不属于该类,通常称为实例变量,实例方法。由于static英文翻译是静态的意思,因此有时也把static修饰的成员变量和方

2016-09-20 13:23:11 302

原创 Unity下使用暴风魔镜SDK通过头部和手柄控制字体拼凑(二)

工程如下图,按照笔划顺序给笔划命名stroke下的物体是笔划实体,tag是Font,加碰撞体originalStrokePositionParent下的是笔划实体原本待在的地方,tagboardStrokePositionposition是墙上希望笔划应该待在的地方,tag是wallStrokePosition,加碰撞体代码如下:选择笔划及控制移动using U

2016-09-20 12:01:58 1387 2

原创 Unity下使用暴风魔镜SDK通过头部和手柄控制字体拼凑(一)

最近在做一个模块,要求使用暴风魔镜SDK通过头部和手柄控制字体拼凑,注意不是笔划的书写哦,以为用头来控制写字实在是太奇怪了......以“鸟”字为例,其他的字也可以,只需设置好模板上笔划应到的位置,以及按顺序给笔划编号如1,2,3....即可。效果如下,肯定不完美,但还是要记录下来,希望能与大家多交流啊,哈哈哈哈通过按下魔镜C键来选择下方的笔划,通过头部移动来控制笔划的移动C键

2016-09-20 11:50:28 1277 1

空空如也

空空如也

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

TA关注的人

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