重拾数据结构:简单排序
2013-06-06 20:19
302 查看
直接给代码:
冒泡+选择+插入:
冒泡+选择+插入:
package com.data.silence; /** * 简单排序:冒泡,选择,插入 * @author silence * */ public class SimpleSort { public static void bunbleSort(int[] a){ System.out.println("这是bunbleSort"); for(int i=a.length-1;i>0;i--){ for(int j=0;j<i;j++){ if(a[j]>a[i]){ swap(a,i,j); } } } } public static void selectSort(int[] a){ System.out.println("这是selectSort"); for(int i=a.length-1;i>0;i--){ int max = i; for(int j=0;j<i;j++){ if(a[j]>a[max]){ max = j; } } swap(a, i, max); } } public static void insertSort(int[] a){ System.out.println("这是insertSort"); for(int i = 1; i<a.length;i++){ // for(int j=i-1;j>=0&&a[j]>a[j+1];j--){ // swap(a, j, j+1); // } int temp=a[i],j=i; if(a[j-1]>temp){ while(j>0&&a[j-1]>temp){ a[j]=a[j-1]; j--; } a[j]=temp; } } } public static void swap(int[] a,int i ,int j){ int temp = a[i]; a[i]=a[j]; a[j]=temp; } public static void output(int[] a){ for(int i=0;i<a.length;i++){ System.out.print(a[i]+","); } System.out.println(); } public static void main(String[] args){ int[] a = new int[]{33,89,76,4,2,0,88,89,1,28}; output(a); // bunbleSort(a); // output(a); // selectSort(a); // output(a); insertSort(a); output(a); } }
相关文章推荐
- 【数据结构】简单查找和排序
- 数据结构和算法-----三种简单的排序详解
- 数据结构(JAVA)---二叉树的简单实现及排序
- [Java数据结构]简单排序之选择排序
- 每天一个数据结构——三种简单排序算法及Java实现
- 数据结构之简单排序第一幕
- 数据结构----简单选择排序
- 数据结构简单选择排序
- 我---对‘数据结构’中‘排序’的理解 ---------2:选择排序--(一)简单选择排序
- 算法和数据结构---排序--简单选择排序
- 数据结构学习笔记一:简单排序与查询算法
- [Java数据结构]简单排序之插入排序
- 数据结构简单排序之选择排序
- [Java数据结构]简单排序之冒泡排序
- 数据结构系列之简单排序
- 数据结构入门--优先队列简单排序
- 数据结构01之简单排序
- 关于数据结构三种简单的排序总结
- Java实现简单数据结构之二叉树结构排序 binary tree