欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

冒泡排序算法原理及JAVA實現(xiàn)代碼

 更新時間:2014年01月19日 13:31:42   作者:  
關鍵字較小的記錄好比氣泡逐趟上浮,關鍵字較大的記錄好比石塊下沉,每趟有一塊最大的石塊沉底

冒泡排序法:關鍵字較小的記錄好比氣泡逐趟上浮,關鍵字較大的記錄好比石塊下沉,每趟有一塊最大的石塊沉底。

算法本質:(最大值是關鍵點,肯定放到最后了,如此循環(huán))每次都從第一位向后滾動比較,使最大值沉底,最小值上升一次,最后一位向前推進(即最后一位剛確定的最大值不再參加比較,比較次數(shù)減1)

復雜度: 時間復雜度 O(n2) ,空間復雜度O(1)

JAVA源代碼(成功運行,需要Date類)

復制代碼 代碼如下:

 public static void bubbleSort(Date[] days) {
  int len = days.length;
  Date temp;
  for (int i = len - 1; i >= 1; i--) {
   for (int j = 0; j < i; j++) {
    if (days[j].compare(days[j + 1]) > 0) {
     temp = days[j + 1];
     days[j + 1] = days[j];
     days[j] = temp;
    }
   }
  }
 }
class Date {
 int year, month, day;

 Date(int y, int m, int d) {
  year = y;
  month = m;
  day = d;
 }

 public int compare(Date date) {
  return year > date.year ? 1 : year < date.year ? -1
    : month > date.month ? 1 : month < date.month ? -1
      : day > date.day ? 1 : day < date.day ? -1 : 0;
 }

 public void print() {
  System.out.println(year + " " + month + " " + day);
 }
}

復制代碼 代碼如下:

package testSortAlgorithm;

public class BubbleSort {
 public static void main(String[] args) {
  int array[] = { 5, 6, 8, 4, 2, 4, 9, 0 };
  bubbleSort(array);
  for (int i = 0; i < array.length; i++) {
   System.out.println(array[i]);
  }
 }

 public static void bubbleSort(int array[]) {
  int temp;
  for (int i = array.length - 1; i > 0; i--) {
   for (int j = 0; j < i; j++) {
    if (array[j] > array[j + 1]) {
     temp = array[j];
     array[j] = array[j + 1];
     array[j + 1] = temp;
    }
   }
  }
 }
}

相關文章

  • idea文件被鎖無法更改問題

    idea文件被鎖無法更改問題

    這篇文章主要介紹了idea文件被鎖無法更改問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • Java實現(xiàn)圖片與二進制的互相轉換

    Java實現(xiàn)圖片與二進制的互相轉換

    這篇文章主要為大家詳細介紹了Java實現(xiàn)圖片與二進制的互相轉換,將圖片轉二進制再將二進制轉成圖片,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • Java?天生就是多線程

    Java?天生就是多線程

    這篇文章主要介紹了Java天生就是多線程,程序天生就是多線程程序,因為執(zhí)行main()方法的是一個名稱為main的線程,更多相關內容需要的小伙伴可以參考一下
    2022-07-07
  • Java list foreach修改元素方式

    Java list foreach修改元素方式

    這篇文章主要介紹了Java list foreach修改元素方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • SpringBoot如何優(yōu)雅的整合Swagger Api自動生成文檔

    SpringBoot如何優(yōu)雅的整合Swagger Api自動生成文檔

    在多人協(xié)作的開發(fā)過程中,API文檔不僅可以減少等待,也能保證開發(fā)的持續(xù)進行,這篇文章主要給大家介紹了關于SpringBoot如何優(yōu)雅的整合Swagger Api自動生成文檔的相關資料,需要的朋友可以參考下
    2021-07-07
  • Java switch使用原理及實例解析

    Java switch使用原理及實例解析

    這篇文章主要介紹了Java switch使用及實例解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-02-02
  • 四步輕松搞定java web每天定時執(zhí)行任務

    四步輕松搞定java web每天定時執(zhí)行任務

    本篇文章主要介紹了四步輕松搞定java web每天定時執(zhí)行任務,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-01-01
  • Spring-cloud 注冊服務提供者搭建方法

    Spring-cloud 注冊服務提供者搭建方法

    本篇文章主要介紹了Spring-cloud 注冊服務提供者搭建方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-04-04
  • Java的Volatile實例用法及講解

    Java的Volatile實例用法及講解

    在本篇文章里小編給大家整理了關于Java的Volatile知識點相關內容,有需要的朋友們可以跟著學習下。
    2019-09-09
  • SpringBoot項目讀取外置logback配置文件的問題及解決

    SpringBoot項目讀取外置logback配置文件的問題及解決

    SpringBoot項目讀取外置logback配置文件的問題及解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-08-08

最新評論