氣泡排序4種寫法-java
寫一點自己對冒牌排序的理解:
int[] arr = new int[length];
1,通過對比相鄰2個數,得到最大/最小數;
1>從前往後比,每次篩選出最後一位
for(int i=0;i<arr.length;i++){ //需要對比幾輪
for(int j=0;j<arr.length-i-1;j++){ //每輪需對比幾次
//從0依次往後對比,結果最後一位是最小值
//找最小數,如果前一位比後一位小,則交換位置
if(arr[j]<arr[j+1]){
//定義一個臨時變數做位置交換的容器
int temp;
//交換位置
temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
第一輪對比得到最後一個位置的準確數。第二輪對比應該只比到倒數第二位,依次類推,另一種寫法:
for(int i=arr.length;i>0;i--){
for(int j=0;j<i-1;j++){
if(arr[j]<arr[j+1]){
int temp;
temp=arr[j];
arr[j]=arr[j+1 ];
arr[j+1]=temp;
}
}
}
2>從後往前比,每次篩選出第一位
for(int i=0;i<arr.length;i++){
for(int j=arr.length;j>0;j--){
//從最後一位開始比
if(arr[j]<arr[j-1]){
int temp;
temp=arr[j];
arr[j]=arr[j-1];
arr[j-1 ]=temp;
}
}
}
2,取一個位置上的數,分別和其他數做對比,確定該位置的準確數
for(int i=0;i<arr.length-1;i++){
for(int j=i+1;j<arr.length;j++){
if(arr[i]<arr[j]){
int temp;
temp=arr[i];
arr[i]=arr[j];
arr[j]=temp;
}
}
}
這種方式從前往後和從後往前,沒什麼區別
菜鳥筆記,大神留情!
相關推薦
氣泡排序4種寫法-java
寫一點自己對冒牌排序的理解: int[] arr = new int[length]; 1,通過對比相鄰2個數,得到最大/最小數; 1>從前往後比,每次篩選出最後一位 for(int i=0;i<arr.length;i++){ //
氣泡排序四種寫法
package com.zzk.suanfa; /** * Created on 2017/6/16. */ public class Bubbler { //排序演算法1,氣泡排序法 第一種寫法 public static void ma
Android 按鈕的響應點擊事件的4種寫法
是把 nac sta lns toast 一段 大寫 n) eat Android按鈕的響應點擊事件 學習了按鈕的響應點擊事件,寫一下總結,寫的不好的希望大家能給出意見或建議。 這是layout xml文件 點擊事件只需要獲得Button的id或者onClick
高併發程式設計系列:4種常用Java執行緒鎖的特點,效能比較、使用場景
高併發程式設計系列:4種常用Java執行緒鎖的特點,效能比較、使用場景 http://youzhixueyuan.com/4-kinds-of-java-thread-locks.html 在Java併發程式設計中,經常遇到多個執行緒訪問同一個 共享資源 ,這時候作為開發者
排序演算法之氣泡排序——2種形式
1.第一種形式氣泡排序 package Sort; public class BubbleSort1 { public static void main(String[] args) { &nbs
4種常用Java執行緒鎖的特點,效能比較、使用場景
文章目錄 多執行緒的緣由 多執行緒併發面臨的問題 4種Java執行緒鎖(執行緒同步) Java執行緒鎖總結 多執行緒的緣由 在出現了程序之後,作業系統的效能得到了大大的提升。雖然程序的出現解決了作業系統的併
這可能是最透徹的氣泡排序演算法解析(java實現)
氣泡排序是一種思想簡單,便於理解和實現的排序演算法,也許是很多人學習的第一個排序演算法,廢話不多說,我們來實現它 演算法詳解 我們以升序排列為例,演算法的思想是,遍歷整個陣列,依次對陣列中的每兩個數進行比較大小,通過兩個數字的交換,達到將最大的元素移動到陣列的最
排序演算法之氣泡排序的思想以及Java實現
1 基本思想 設排序表長為n,從後向前或者從前向後兩兩比較相鄰元素的值,如果兩者的相對次序不對(A[i-1] > A[i]),則交換它們,其結果是將最小的元素交換到待排序序列的第一個位置,我們
C#委託方法匿名的4種寫法
using System;using System.Threading; //不需要建構函式的委託物件internal sealed class NoConstructorDelegateClass{ public static void CallbackWithout
js陣列排序兩種寫法(冒泡)
js實現陣列的排序方法(sort方法) var arrObj = new Array (1,8,7,6); arrObj.sort(); console.log(arrObj.join(",")) 如
單例模式的七種寫法 (Java)
第一種(懶漢,執行緒不安全): public class Singleton { private static Singleton instance; private Singleton (){} public st
氣泡排序實現--圖解/例項/java/php
氣泡排序 概念 在接觸程式的過程中,我們經常會使用到各種各樣的排序演算法來滿足我們的需求 氣泡排序就是眾多排序演算法中一種簡單好用的演算法 氣泡排序以其像氣泡一樣將元素交換到頂端的形式從而命名氣泡排
Android 點選事件的4種寫法
1、重寫點選事件監聽類 button1.setOnClickListener(new MyOnClickListener()); private class MyOnClickListener implements OnClickListener{@Overridepubl
【JAVA8】Set排序四種寫法
工作中遇到,寫了很久以前的寫法,師兄給了很多建議,於是整理了一下。孔子曰:“你知道茴香豆的茴字有幾種寫法嗎?” 第一種,平常的寫法: public class App { public static void main( String[] args ) {
實驗六:排序演算法應用 1.錄入學生基本資訊 2、直接插入排序 3、氣泡排序 4、快速排序 5、簡單選擇排序 6、堆排序
/*實驗六:排序演算法應用 內容: 給出n個學生的考試成績表,每條記錄由學號、姓名和分數和名次組成,設計演算法完成下列操作: (1)設計一個顯示對學生資訊操作的選單函式如下所示: *************************1、錄入學生基本資訊2、直接插入排序3、氣泡
4種常用Java執行緒鎖的特點,效能比較及使用場景
開發十年,就只剩下這套架構體系了! >>>
Java氣泡排序的6種寫法(1)
/** * */ package ch02; /** * @author Administrator *sorting algorithm */ public class javaData1 { // public static void sw
氣泡排序的4種for迴圈寫法
本人共總結出4種氣泡排序的for迴圈寫法: 1 for(i=0;i<n;i++){ for(j=0;j<=i;j++) /
java算法面試題:排序都有哪幾種方法?請列舉。用JAVA實現一個快速排序。選擇冒泡快速集合至少4種方法排序
算法 err div println rda print 算法面試 ++ 快速排序 package com.swift; import java.util.ArrayList; import java.util.Collections; import java.util
PHP 常見4種排序 氣泡排序、選擇排序、插入排序、快速排序
1、氣泡排序 原理:對一組資料,比較相鄰數的大小,將值大的放到後面。 <?php // 氣泡排序 function bubbleOrder($arr) { $count = count($arr); $temp = 0; // 外層控制排序次數 for ($