排序演算法(冒泡 選擇 插入)附Java演示原始碼

2021-06-29 10:06:11 字數 1023 閱讀 9332

一、氣泡排序

1、執行過程:以生活中按身高排隊為例。

① 比較兩人的身高

② 如果左邊的隊員高,則兩隊員交換位置

③ 向右移動一位,比較下面兩個隊員。

可見,一直比較到佇列的最右端後,個子最高的隊員在最右端。即選出了隊伍中最**的人。但還沒有所有隊員排好序。接下來,進行第二趟排序,可選出次高的隊員,以此類推。

2、**演示:

public

class bubble ;

//用於陣列位置交換

public

static

void swap(int x,int y);

// 用於陣列位置交換

public

static

void swap(int x, int y) ;

// 用於陣列位置交換

public

static

void swap(int x, int y) {

int temp = a[x];

a[x] = a[y];

a[y] = temp;

//插入排序

public

static

void insertionsort(){

int in,out;

for(out=1;outint temp=a[out];

in=out;

while(in>0&&a[in-1]>temp){

a[in]=a[in-1];

--in;

a[in]=temp;

public

static

void main(string args){

insertionsort();

for(int temp:a){

system.out.print(temp+"<");

3、插入排序的效率:執行時間依然為o(

n2)。總體來說:插入排序比氣泡排序快一半,比選擇排序快一點。特別適用於待排序資料基本有序的情況。

java常用排序演算法 冒泡,選擇,插入

重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。時間複雜度 o n 為穩定演算法。public static void bubblesort int arr 每一次從待排序的資料元素中選出最小 ...

java排序演算法 氣泡排序 選擇排序 插入排序

氣泡排序 原理 是臨近的數字兩兩進行比較,按照從小到大或者從大到小的順序進行交換,這樣一趟過去後,最大或最小的數字被交換到了最後一位,然後再從頭開始進行兩兩比較交換,直到倒數第二位時結束 author daopinz public class bubblesort system.out.printl...

演算法 選擇 插入 氣泡排序

選擇排序,就是每次選擇未排序中最小的,放到第i個位置。比如第一次,遍歷整個陣列,找到陣列中最小的,放到第乙個位置 第二次從第2個元素開始遍歷,找到最小的,放到第2個位置 以此類推,流程如下。輸出結果 012 3568 9插入排序,第一次迴圈,當做0 0號位置已經排好序,需要做的是從0 1號位置排序,...