易截截图软件、单文件、免安装、纯绿色、仅160KB

Java 几种排序法

这里主要对8种排序算法做个总结,分别是插入排序,选择排序,冒泡排序,希尔排序,归并排序,堆排序,快速排序以及基数排序。
1、 插入排序
比较和交换的时间复杂度为O(n^2),算法自适应,对于数据已基本有序的情况,时间复杂度为O(n),算法稳定,开销很低,适合于数据已基本有序或者数据量小的情况。
public void insertionSort() {// 插入排序

int out, in;

int count1 = 0, count2 = 0;// 复制次数,比较次数

for (out = 1; out < nElems; out++) {

long temp = a[out];

in = out;

boolean flag=in>0&&a[in-1]>=temp;

while(flag){

if(a[in-1]>=temp){

if(in>0){

a[in]=a[in-1];

count1++;

--in;

}

}

count2++;

flag=in>0&&a[in-1]>=temp;

}

a[in] = temp;

}

System.out.println("复制次数为:" + count1 + " 比较次数为:" + count2);

}

2、 选择排序
算法不稳定,O(1)的额外的空间,比较的时间复杂度为O(n^2),交换的时间复杂度为O(n),并不是自适应的。在大多数情况下都不推荐使用。只有在希望减少交换次数的情况下可以用。
public void selectionSort(){//选择排序

int out, in, min;

for(out=0;out<nElems-1;out++){

min=out;

for(in=out+1;in<nElems;in++){

if(a[in]<a[min]){

min=in;

}

swap(out,min);

}

}

}

3、 冒泡排序
算法稳定,O(1)的额外的空间,比较和交换的时间复杂度都是O(n^2),自适应,对于已基本排序的算法,时间复杂度为O(n)。冒泡算法的许多性质和插入算法相似,但对于系统开销高一点点。
public void bubbleSort() {// 冒泡排序,单项

int out, in;



相关文档:

Java环境的搭建

首先我们应该对 JDK,JRE,JVM 有所认知,下面这个图就可以清晰的表述他们的关系: JDK,JRE,JVM 的关系 一个更复杂的图:这是 J2SE 1.5  具体功能图表,在图的左边,我们可以清晰的看出哪些是JVM的范畴,哪些是JRE的范畴,哪些是JDK的范畴。 Java程序的执行逻辑 下面图演示的是如何打造一个个性化的Java启动器 ......

java中线性表,链表,哈希表是常用的数据结构

线性表,链表,哈希表是常用的数据结构,在进行Java开发时,JDK已经为我们提供了一系列相应的类来实现基本的数据结构。这些类均在java.util包中。本文试图通过简单的描述,向读者阐述各个类的作用以及如何正确使用这些类。    
   
  Collection  
  ├List& ......

JAVA Something

JDK
Sun JDK
http://java.sun.com/javase/downloads/index.jsp
IBM JDK
http://www.ibm.com/developerworks/java/
http://www.ibm.com/developerworks/cn/java/
IDE:
Eclipse
http://www.eclipse.org/
Container:
Apache HTTP server
http://www.apache.org/
Tomcat: JSP,Servlet,JavaBean container.
http:// ......

七 Java EE

   什么是java EE了。一般来说,一个成熟的java EE解决方案,包括以下几个部分。
 
 1、可以对外提供基于标准协议如xml的服务
如Web Service
 2、内部通信基于面向对象的通信协议
如 RMI,Corba,XML RPC
 3、安全性高,权限控制严格
如 MD5,SSL,AccountDomain
 4 &nbs ......

java枚举类型

public class TestEnum {
    /*最普通的枚举*/
    public enum ColorSelect {
        red, green, yellow, blue;    
    }
   ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号