- 博客(27)
- 问答 (1)
- 收藏
- 关注
原创 基数排序
public static void radixSort(int[] array) { int index=0; for(int i=0;i int length=String.valueOf(array[i]).length(); if(length>index){ index=length; } } System.out
2016-05-12 19:14:24 317
原创 归并排序
public static void mergeSort(int[] array){ //前一个有序组合 ArrayList list01=new ArrayList //后一个有序组合 ArrayList list02=new ArrayList //两个有序组合合并的结果 ArrayList list03=new ArrayList
2016-05-12 19:08:31 263
原创 希尔排序
希尔排序1、算法介绍: 希尔排序(Shell Sort)是插入排序的一种。也称缩小增量排序,是直接插入排序算法的一种更高效的改进版本。希尔排序是非稳定排序算法。该方法因DL.Shell于1959年提出而得名。希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止。2、算法
2016-05-12 19:02:46 321
原创 插入排序
二、直接插入排序1、算法概念: 每次从无序的数据中取出第一个元素,把它插入到有序的数据中的合适位置,使无序表变得有序。2、算法思想: 假设待排序的记录存放在数组A[1...n]中,初始是,A[1]自成一个有序的序列,无序的数据为A[2...n],从i=2起直至i=n为止,依次将A[i]插入到当前有序的区域R[1,i-1],生成含n个记录的有序序列。3、算法实现:
2016-05-12 19:00:47 352
原创 快速排序
一、快速排序 快速排序属于交换排序的一种,1962年由C.R.A.Hoare提出,它采用了一种分治的策略,通常称为分治法。1、算法思想: 通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另一部分的所有数据都要小,然后按照此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序的序列。2、实现思路 a、以第一个关
2016-05-12 18:53:14 273
原创 RandomAccessFile类
/* * r代表以可读方式打开。 * rw代表以可写的方式打开。 */读取文件 public static void randomRead(File file, int pointer){ RandomAccessFile randomAccessFile = null; try { randomAccessFile = ne
2016-05-02 16:31:01 314 1
原创 对象流
对象流的写入public static void objectWriteStream(File file, Message message ){ ObjectOutputStream objectOutputStream = null; try { objectOutputStream = new ObjectOutputStream(new FileOutputStrea
2016-05-02 16:27:27 329
原创 内存流
利用内存流写入string。public static void ranSteam(){ String string = "helloworld"; ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(string.getBytes()); ByteArrayOutputStream byt
2016-05-02 16:25:27 223
原创 system.in的用法,system.out的用法。
public class IOUtils {/* * System.in 用法一 */ public static void startInput(){ String resultString = null; BufferedReader bufferedReader = null; try { System.out.println("请输入字符:
2016-05-02 16:23:14 3074
原创 IO流中以字符流读取和写入。
字符流的读取。public static void readFileByBufferReanderLine(File file) { BufferedReader bufferedReader = null; String tempString = null; try { bufferedReader = new BufferedReader(new FileRead
2016-05-02 16:04:16 431
原创 数组与集合之间简单的相互转换
public static void main(String[] args) { //将数组转化为集合。 Integer []a ={1,2,3,4,5}; Listlist = Arrays.asList(a); System.out.println(list); //将集合转化为
2016-05-02 15:56:37 286
原创 set集合
这是set集合的关系图。java.util.Set[I] java.util.HashSet[C] java.util.LinkedHashSet[C] java.util.SortedSet[I] java.util.TreeSet[C] Set集合的存储特点 a、set集合属于无
2016-05-02 15:51:48 286
原创 list集合
java.util.Collection [I] +--java.util.List [I] +--java.util.ArrayList [C] +--java.util.LinkedList [C] +--java.util.Vector [C] +--java.util.Stack [C] 这是list集
2016-05-02 15:39:51 239
原创 冒泡排序
冒泡排序的规则是,相邻的两位依次比较,两者之间小的(或大的)调换位置,一直比到最后。public static int[] bubbleSort (int[] array){ for(int i = 0; i for(int j = 0;j if (array[j] > array[j + 1]){ array[j]
2016-05-02 15:31:50 244
原创 选择排序
选择排序的规则是,第一次选择最小的放在第一个位置上,第二次选择第二小的放在第二位上,余下如此选择比较放置。public static int[]selectionSort (int[] array){ /* * 选择排序 */ int min = 0; boolean isHave = false; for(int i = 0;
2016-05-02 15:27:45 202
原创 接口回调
接口回调一直都是java中的难点,这次我所描述的则是最简单的例子。 a、if you call me, I will call back; b、回调就是一种双向模式,一者调用另一者的方法,另一者再反调回来 public class Person { Callback callback; //接口类型的参数 public void dosomething()
2016-05-02 15:10:48 245
原创 多态的表现特点
多态的定义:是指允许不同类的对象对同一个消息作出不同的响应,即同一个消息可以根据发送对象的不同,采取多种不同的行为方式。 (发送消息即是方法的调用) 其中多态实现:属于动态绑定的一种。比如:一个父类去实例化子类的对象,子类又通过父类定义好的方法,进行了覆写,此时用父类实例化的子类对象去调用父类的方法,调用将是子类覆写的方法。现在通过一个例子详细的说明多态在类中的体现与难点。pu
2016-05-02 14:40:53 519
原创 四种访问权限修饰符的区别
访问权限修饰符 a、私有权限(private) private可以修饰数据成员,构造方法,方法成员,不能修饰类(此处指外部类,不考虑内部类)。被private修饰的成员,只能在定义它们的类中使用,在其他类中不能调用。 b、默认权限(default) 类,数据成员,构造方法,方法成员,都能够使用默认权限,即不写任何关键字。默认权限即同包权限,同包权限的元素
2016-04-11 13:59:39 17004 1
原创 继承中的构造方法
继承中的构造方法 a、子类的构造过程中必须调用其基类的构造方法。 b、子类可以在自己的构造方法中使用super(arguments...)调用基类的构造方法。 b.1、使用this(arguments..)调用本类的另外构造方法。 b.2、如果调用super,必须写在子类构造方法的第一行。 c、如果子类的构造方法中没有显示的调用基类的构造
2016-04-11 13:55:31 275
原创 this关键字,static关键字,super关键字的使用。
一 this关键字的使用。 b、把这个类自己的实例化对象当作参数进行传递时,可以使用this。 c、内部类中,调用外部类的方法或变量, 可使用:类名.this.(变量或方法名) d、在同一个类中,可以使用this关键字调用同名的重载构造方法(前提是:在构造方法中调用其他构造方法,
2016-04-11 13:37:20 538
原创 类(对象)之间的四种关系。
类(对象)之间的4种关系 a、依赖关系(Dependency) 所谓依赖就是某个对象的功能依赖于另外的某个对象,而被依赖的对象只是作为一种工具在使用,而并不持有对它的引用 举例:一个人自创生就需要不停的呼吸,而人的呼吸功能之所以能维持生命就在于吸进来的气体发挥了作用,所以说空气只不过是人类的一个工具,而人并不持有对它的引用。 b、关联关系(Association
2016-04-07 19:44:37 12195
原创 方法和构造方法的区别。
一,方法 如何创建一个方法。(必须声明在类中,不能声明在某个方法中。) a、修饰符,如果忽略,则自动为缺省配置 b、static:可选,如果static修饰,那么这个方法为静态方法。 c、返回类型:必选,如果为空返回类型,则为:void d、方法名:必选,一般为驼峰式命名法 e、方法参数:必选,小括号内可为空,空即不传
2016-04-07 19:34:19 1038
原创 利用return语句实现方法的递归。
利用return语句实现方法的递归。如下是一个简单的递归算法,实现5+4+3+2+1的和。public class MultiN { public static void main(String[] args) { System.out.println(Multi(5)); / 为n赋值为5. } /* * 1、Multi(5) * return 5 * M
2016-04-07 13:59:42 618
原创 几个跳转语句的介绍:break语句,continue语句,return语句。
5、跳转语句.break: 此语句导致程序终止包含它的循环并进行程序的下一阶段(整个循环后面的语句), 即:不是跳到下一个循环周期而是退出循环。 如果break语句包含在嵌套循环里,它只跳出最里面的循环。 public class Example { public static void main(S
2016-04-07 13:44:13 3312
原创 Java语句的执行结构
1、Java语句的执行结构 a、执行父类的静态代码块 b、执行子的静态代码块 c、如果父类有非静态代码块,则执行,反之不执行。 d、执行父类的构造方法 e、如果子类有非静态代码块,则执行,反之不执行。 f、执行子类的构造方法 总结:父类静态代码块 > 子类静态代码块 > 父类非静态代码块 > 父类构造方法 > 子类非静态代码块 > 子类构造方法例子
2016-04-07 12:47:00 487
原创 数据类型的转换
注释:各数据容量从小到大排序。排序: byte, short, char, int,long,float,double。 其中实数常量默认为double类型, 整数常量默认为int类型。数据类型的转换。1容量小的数据类型转成容量大的数据类型,属于隐式转换,自动转换。 2容量大的数据类型转成容量小的数据类型,属于显示转换,即强转。比如,定义一个
2016-04-05 19:22:00 370
原创 java运行环境的构建,命令台的基本操作。
1 安装JDK.下载的jdk中包含以下几部分内容。a、JDK(Java Development Kit),开发java程序用的开发包,JDK里面有java的运行环境(JRE),包括client和server端的。需要配置环境变量。b、JRE(Java Runtime Environment),运行java程序的环境,JVM,JRE里面只有client运行环境,安装过程中,会自动添加PA
2016-04-05 09:22:14 321
空空如也
项目加载jni报错.so文件加载出问题:
2017-03-24
TA创建的收藏夹 TA关注的收藏夹
TA关注的人