排序演算法之 氣泡排序,插入排序,選擇排序

2021-08-29 13:53:09 字數 1040 閱讀 5911

顧名思義:小的數一點一點向前冒,最終有序

時間複雜度:o(n^2)

public

static

void

bubblesort

(int[

] arr)

for(int i=arr.length-

1; i>

0; i--)}

}}public

static

void

swap

(int[

] arr,int i,int j)

基本思想:每步將乙個待排序的記錄,按其順序碼大小插入到前面已經排序的字序列的合適位置(從後向前找到合適位置後),直到全部插入排序完為止。

時間複雜度:o(n^2)

public

static

void insertsort(int[

] arr)

for(int i=

1; i}}

public

static

void

swap

(int[

] arr,int i,int j)

基本思想:在要排序的一組數中,選出最小的乙個數與第乙個位置的數交換;然後在剩下的數當中再找最小的與第二個位置的數交換,如此迴圈到倒數第二個數和最後乙個數比較為止。

時間複雜度:o(n^2)

public

static

void

selectsort

(int[

] arr)

//交換兩個數

swap

(arr,i,minindex)

;//注意此題i和minindex存在相等的情況,此時若用異或來交換兩個數會出錯}}

public

static

void

swap

(int[

] arr, int i, int j)

排序演算法之「選擇排序 氣泡排序 插入排序」

上午上課老師通過兩個神似的三角形,講了氣泡排序和選擇排序的區別和聯絡在 恰好下午看到了這樣的一寫關於該排序演算法的一些資料,想了想還是決定試一試,因為出來混總是要還的。就是使一串記錄,按照其中某個或者某個關鍵字的大小,遞增或遞減的排列起來的演算法。它應用在大量資料處理方面,乙個優秀的演算法可以節省大...

《演算法》選擇排序 插入排序 氣泡排序

選擇排序,演算法 p156 package algorithm public class selection p156 for int i 0 i n i public static void main string args test.sort a 思路 將第乙個元素與剩餘所有元素相比,如果有比第...

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

氣泡排序演算法 氣泡排序是最簡單的排序演算法之一。此演算法具有二次方程增長階,因此僅適合排序小列表。氣泡排序演算法是階o n 2 的演算法 package com.szy.structure.sort public class bubblesort system.out.println 排序前 fo...