用Java实现几种常见的排序算法-Java基础-Java-编程开发
来源:互联网 发布:淘宝网天猫羽绒服 编辑:程序博客网 时间:2024/06/05 17:01
用Java语言实现的各种排序,包括插入排序、冒泡排序、选择排序、Shell排序、快速排序、归并排序、堆排序、SortUtil等。
插入排序:
package org.rut.util.algorithm.support;
import org.rut.util.algorithm.SortUtil;
/**
* @author treeroot
* @since 2006-2-2
* @version 1.0
*/
public class InsertSort implements SortUtil.Sort{
/* (non-Javadoc)
* @see org.rut.util.algorithm.SortUtil.Sort#sort(int[])
*/
public void sort(int[] data) {
int temp;
for(int i=1;i
}
}
}
}
冒泡排序:
package org.rut.util.algorithm.support;
import org.rut.util.algorithm.SortUtil;
/**
* @author treeroot
* @since 2006-2-2
* @version 1.0
*/
public class BubbleSort implements SortUtil.Sort{
/* (non-Javadoc)
* @see org.rut.util.algorithm.SortUtil.Sort#sort(int[])
*/
public void sort(int[] data) {
int temp;
for(int i=0;i
if(data[j] SortUtil.swap(data,j,j-1);
}
}
}
}
}
选择排序:
package org.rut.util.algorithm.support;
import org.rut.util.algorithm.SortUtil;
/**
* @author treeroot
* @since 2006-2-2
* @version 1.0
*/
public class SelectionSort implements SortUtil.Sort {
/*
* (non-Javadoc)
*
* @see org.rut.util.algorithm.SortUtil.Sort#sort(int[])
*/
public void sort(int[] data) {
int temp;
for (int i = 0; i < data.length; i ) {
int lowIndex = i;
for (int j = data.length - 1; j >i; j--) {
if (data[j] < data[lowIndex]) {
lowIndex = j;
}
}
SortUtil.swap(data,i,lowIndex);
}
}
}
Shell排序:
package org.rut.util.algorithm.support;
import org.rut.util.algorithm.SortUtil;
/**
* @author treeroot
* @since 2006-2-2
* @version 1.0
*/
public class ShellSort implements SortUtil.Sort{
/* (non-Javadoc)
* @see org.rut.util.algorithm.SortUtil.Sort#sort(int[])
*/
public void sort(int[] data) {
for(int i=data.length/2;i>2;i/=2){
for(int j=0;j insertSort(data,j,i);
}
}
insertSort(data,0,1);
}
/**
* @param data
* @param j
* @param i
*/
private void insertSort(int[] data, int start, int inc) {
int temp;
for(int i=start inc;i
}
}
}
}
[1][2][3][4][5]
- 用Java实现几种常见的排序算法-Java基础-Java-编程开发
- 用Java实现几种常见的排序算法
- 用Java实现几种常见的排序算法
- 用Java实现几种常见的排序算法
- 用Java实现几种常见的排序算法
- 用Java实现几种常见的排序算法
- 用Java实现几种常见的排序算法
- 用Java实现几种常见的排序算法
- 用Java实现几种常见的排序算法
- 用Java实现几种常见的排序算法
- 用java实现几种常见的排序算法
- 用Java实现几种常见的排序算法
- 用Java实现几种常见的排序算法
- 用Java实现几种常见的排序算法
- 用Java实现几种常见的排序算法
- 用Java实现几种常见的排序算法
- 用Java实现几种常见的排序算法
- 用Java实现几种常见的排序算法
- SUN认证Java2程序员考试(SCJP)试题解析-Java基础-Java-编程开发
- 如何轻松编写一个强大的字符串分解器-Java基础-Java-编程开发
- Java中正则表达式使用方法详解-Java基础-Java-编程开发
- 用Java快速开发Linux GUI应用-Java基础-Java-编程开发
- 该学Java或.NET?-Java基础-Java-编程开发
- 用Java实现几种常见的排序算法-Java基础-Java-编程开发
- .NET 和 Java 之碰撞火花:到底谁快?-Java基础-Java-编程开发
- Java对战.NET,战争与和平的游戏-Java基础-Java-编程开发
- JAVA 与.NET 在前途上面的比较-Java基础-Java-编程开发
- 微软,您的.net为中国程序员带来了什么?-Java基础-Java-编程开发
- WEB开发技术比较报告-Java基础-Java-编程开发
- 探讨与比较Java和.NET的事件处理框架-Java基础-Java-编程开发
- 比较 .NET 和 Java-Java基础-Java-编程开发
- JAVA 和.NET在安全功能的比较-Java基础-Java-编程开发