Java的排序算法有哪些

java的排序大的分类可以分为两种:内排序和外排序。在排序过程中,全部记录存放在内存,则称为内排序,如果排序过程中需要使用外存,则称为外排序。下面讲的排序都是属于内排序。1.插入排序:直接插入排序、二分法插入排序、希尔排序。2.选择排序:简单选择排序、堆排序。3.交换排序:冒泡排序、快速排序。
Java的排序算法有哪些
插入排序:

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<data.length;i++){
for(int j=i;(j>0)&&(data[j]<data[j-1]);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 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<data.length;i++){
for(int j=data.length-1;j>i;j--){
if(data[j]<data[j-1]){
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);
}
}

}2013-11-11
java的排序大的分类可以分为两种:内排序和外排序。在排序过程中,全部记录存放在内存,则称为内排序,如果排序过程中需要使用外存,则称为外排序。下面讲的排序都是属于内排序。
1.插入排序:直接插入排序、二分法插入排序、希尔排序。
2.选择排序:简单选择排序、堆排序。
3.交换排序:冒泡排序、快速排序。
4.归并排序
5.基数排序2015-11-17
排序: 插入,冒泡,选择,Shell,快速排序2013-11-11
选择排序,快速排序,冒泡排序2015-11-09
mengvlog 阅读 31 次 更新于 2025-08-07 15:44:51 我来答关注问题0
  •  翡希信息咨询 排序算法学习分享(一)选择排序

    堆排序:堆排序是一种基于堆数据结构的排序算法,时间复杂度为O。效率提升:堆排序通过构建大顶堆,每次取出堆顶元素后调整剩余部分,使其保持堆的特性,从而提高了排序效率。利用特性:堆排序利用了堆的特性,通过局部调整实现了全局的有序,而选择排序则没有利用任何数据结构特性。总结:选择排序以其直观...

  •  折柳成萌 Java通过几种经典的算法来实现数组排序

    args[i]=args[j]; args[j]=temp; } } } return args; } 选择排序算法 public static int[] selectSort(int[] args){//选择排序算法 for (int i=0;i

  • 下面给你介绍四种常用排序算法:1、冒泡排序 特点:效率低,实现简单 思想(从小到大排):每一趟将待排序序列中最大元素移到最后,剩下的为新的待排序序列,重复上述步骤直到排完所有元素。这只是冒泡排序的一种,当然也可以从后往前排。2、选择排序 特点:效率低,容易实现。思想:每一趟从待排序序列...

  •  文暄生活科普 编写一个程序用选择法对数组a[]={20,10,50,40,30,70,60,80,90,100}进行由大到小的排序的java流程图!!

    以下是选择排序算法对数组a[]={20,10,50,40,30,70,60,80,90,100}进行由大到小排序的Java流程图说明:1. 初始化 开始:流程图开始。设置变量:n:数组a[]的长度,此处为10。i:用于遍历数组的索引,初始化为0。2. 外层循环 判断i

  •  校企律说法 Java的List怎么排序啊?

    Collections.sort方法可以用来对List进行排序,它默认按照自然顺序进行排序,比如数字从小到大排列,或者是字符串按照字典顺序排列。这要求列表中的元素实现了Comparable接口,这个接口在Java标准库中已经为一些基础数据类型(如String、Integer等)实现,因此你无需手动操作。如果你自定义了一个类,并且想要按照...

檬味博客在线解答立即免费咨询

Java相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部