package com.huadee.array;
import java.util.Arrays;
public class ArrayDemo05 {
public static void main(String[] args) {
System.out.println("第一种数组排序 利用Arrays的sort的方法");
int a[] = {45,21,78,12,95,65,32,2,15};
Arrays.sort(a);
for (int i : a) {
System.out.print(i+",");
}
System.out.println("");
System.out.println("第二种数组排序 利用冒泡排序的方法");
for (int i = 0; i < a.length; i++) {
for (int j = 0; j < a.length; j++) {
if (a[i]<a[j]) {
int temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
for (int i = 0; i < a.length; i++) {
System.out.print(a[i]+",");
}
System.out.println("");
System.out.println("第三种数组排序 利用選擇排序的方法");
for (int i = 0; i < a.length; i++) {
int lowerIndex = i;
//找出最小的的一個
for (int j = i+1; j < a.length; j++) {
if (a[j] < a[lowerIndex]) {
lowerIndex = j;
}
}
//交換
int temp = a[i];
a[i] = a[lowerIndex];
a[lowerIndex] = temp;
}
for (int i : a) {
System.out.print(i+",");
}
System.out.println("");
System.out.println("第四种数组排序 利用插入排序的方法");
for (int i = 0; i < a.length; i++) {
// i从一开始,因为第一个数已经是排好序的啦
for (int j = i; j >0; j--) {
if (a[j] < a[j-1]) {
int temp = a[j];
a[j] = a[j-1];
a[j-1] = temp;
}
}
}
for (int i : a) {
System.out.print(i+",");
}
System.out.println("");
System.out.println("第五种数组排序 利用希尔排序的方法");
//分组
for(int increment=a.length/2; increment>0; increment/=2 ){
//每个组内排序
for (int i = 0; i < a.length; i++) {
int temp = a[i];
int j = 0;
for (j=i; j >= increment; j-=increment) {
if (temp<a[j-increment]) {
a[j] = a[j-increment];
}else{
break;
}
}
a[j]=temp;
}
}
for (int i : a) {
System.out.print(i+",");
}
}
}
分享到:
相关推荐
本篇文章将详细讲解标题中提到的六种常见排序算法的Java实现。 1. **冒泡排序**:冒泡排序是最基础的排序算法之一,它通过不断交换相邻的逆序元素来逐渐将较大的元素“浮”到数组的前端。在Java中,冒泡排序的基本...
根据提供的文件信息,本文将详细介绍如何使用Java语言来实现几种常见的排序算法,包括插入排序(Insert Sort)、冒泡排序(Bubble Sort)、选择排序(Selection Sort)以及希尔排序(Shell Sort)。这些排序算法在...
Java中几种比较常见的排序方法,像冒泡、快速排序、插入排序登。
本文将详细讨论两种常见的简单排序算法:冒泡排序和直接插入排序,它们都是基于比较的内部排序算法,并且在Java语言中实现。 **冒泡排序(Bubble Sort)** 冒泡排序是一种基础的排序算法,其基本思想是通过重复...
java排序算法,包括冒泡、插入、快速、选择等四种最常见的排序算法
在给定的文档中,介绍了多种常见的排序算法,包括冒泡排序、快速排序、选择排序、插入排序等,并提供了相应的Java代码实现。 冒泡排序(Bubble Sort)是一种简单的比较排序算法,其基本思想是通过重复遍历待排序...
以下是关于标题和描述中提到的几种排序算法的详细解释,以及它们在Java中的实现。 1. 插入排序(Insertion Sort): 插入排序是一种简单直观的排序算法,它的工作原理是通过构建有序序列,对于未排序数据,在已...
根据给定的文件信息,我们可以深入探讨几种在Java中实现的排序算法,包括插入排序、冒泡排序以及二分插入排序。这些算法是数据结构与算法基础中的重要组成部分,广泛应用于计算机科学领域。 ### 插入排序...
根据给定的文件信息,我们可以深入探讨几种在Java中实现的经典排序算法,这些算法是数据结构与算法领域的重要组成部分,广泛应用于各种计算机科学场景。以下是对插入排序(Insertion Sort)、冒泡排序(Bubble Sort...
根据给定的信息,本文将详细介绍Java中的四种基本排序算法:冒泡排序、插入排序、快速排序和选择排序。...以上四种排序算法各有优缺点,适用场景也不同。在实际应用中,根据具体需求选择合适的排序算法是非常重要的。
本资源包含了几种基本的排序算法,如冒泡排序、选择排序和插入排序,这些都是理解和学习算法的基础。 **冒泡排序**是最基础的排序算法之一,它通过重复遍历待排序的数列,一次比较两个元素,如果他们的顺序错误就把...
根据提供的文件信息,我们可以总结出该文档主要涉及了五种基于Java实现的排序算法:插入排序(Insert Sort)、冒泡排序(Bubble Sort)、选择排序(Selection Sort)、希尔排序(Shell Sort)以及快速排序(Quick ...
这类算法的时间复杂度通常在 O(nlogn) 到 O(n^2) 之间,主要包括以下几种: 1. **冒泡排序**: - **平均情况时间复杂度**:O(n^2) - **最好情况时间复杂度**:O(n) — 当输入序列已经是有序时 - **最坏情况时间...
在项目中,"Sortshow"可能是一个包含所有相关代码的类或包,其中包含了用于创建GUI界面、启动线程、更新界面显示以及具体实现三种排序算法的函数。使用Java多线程可以确保排序过程的动态展示不影响主程序的运行,...
冒泡排序是一种简单的排序算法,它的核心思想是通过相邻两个数一次比较,大的放前,小的放后。相邻两个数一次比较,大的放后,小的放前。每次比较之后最后一个值都是最大值或最小值。以下是冒泡排序的Java实现代码:...
本文将详细探讨Java中实现几种常见的排序算法,包括它们的工作原理、时间复杂度以及如何在实际代码中应用。 一、冒泡排序(Bubble Sort) 冒泡排序是一种简单的排序算法,它重复地遍历待排序的数列,一次比较两个...
以上就是Java中常见的几种排序算法,理解并熟练掌握这些排序算法对于提升编程能力,解决实际问题具有重要意义。在实际开发中,应根据数据特性和性能需求选择合适的排序算法。例如,对于小规模数据,简单的排序算法如...