JAVA 中数组的几种排序方法
2016-03-10 00:00
696 查看
1、数组的冒泡排序
public void bubbleSort(int a[]) { int n = a.length; for (int i = 0; i < n - 1; i++) { for (int j = 0; j < n - 1; j++) { if (a[j] > a[j + 1]) { int temp = a[j]; a[j] = a[j + 1]; a[j + 1] = temp; } } } }
2、数组的选择排序
public void selectSort(int a[]) { for (int n = a.length; n > 1; n--) { int i = max(a, n); int temp = a[i]; a[i] = a[n - 1]; a[n - 1] = temp; } }
3、数组的插入排序
public void insertSort(int a[]) { int n = a.length; for (int i = 1; i < n; i++) { //将a[i]插入a[0:i-1] int t = a[i]; int j; for (j = i - 1; j >= 0 && t < a[j]; j--) { a[j + 1] = a[j]; } a[j + 1] = t; } }
4、设置两层循环
for(int i=0;i<arrayOfInts.length;i++) { for(int j=i+1;j<arrayOfInts.length;j++) { if(arrayOfInts[i]>arrayOfInts[j]) { a=arrayOfInts[i]; arrayOfInts[i]=arrayOfInts[j]; arrayOfInts[j]=a; } } }
5、还有一种方法就是用Arrays.sort()方法:
//导入包 import java.util.Arrays; public class Two3{ public static void main(String[]args) { int[]arrayOfInts={32,87,3,589,12,7076,2000,8,622,127}; Arrays.sort(arrayOfInts); for(int i=0;i<arrayOfInts.length-1;i++) { System.out.print(arrayOfInts[i]+" "); } } }
小示例:
Array stuInfo = Array.CrateInstance(typeOf(Student),5); Array stuScore = Array.CreateInstance(typeOf(double),5); Array.Sort(stuScore,stuInfo); Array.Reverse(stuInfo);
相关文章推荐
- java回调
- 用JAVA实现堆栈(数组篇)
- javassist:增强型的java反射工具,获取方法参数名
- 小议 java:comp/env
- Java排序汇总
- java.util.ResourceBundle使用详解
- java获取服务器一些信息的方法
- 验证日期的Java正则表达式
- Eclipse插件Ant里运用ftp遇到的问题
- java中获取文件路径的几种方式
- Struts2权限控制
- eclipse 设置启动时选择打开工作空间 删除无用工作空间
- Java操作数据库的元数据
- ECLIPSE取消自动更新
- Java 1.5中显示数组
- Eclipse launch configuration----Eclipse运行外部工具
- 怎么看java程序的运行时间
- Java 多态
- java你可能不知道的事(2)--堆和栈
- spring bean生命周期