比較排序之冒泡排序的實(shí)現(xiàn)
冒泡排序可以說(shuō)是在排序算法中最為入門級(jí)別的算法之一了。因?yàn)槠浜?jiǎn)單易于理解,常在課堂中作為排序的入門算法。
冒泡排序見(jiàn)名生意,其排序過(guò)程如同水里的泡一般由下往上逐級(jí)遞升。下圖所示為冒泡排序過(guò)程:假設(shè)待排序序列為{10, 2, 11, 8, 7}。


Java
package com.algorithm.sort.bubble;
import java.util.Arrays;
/**
* 冒泡排序
* Created by yulinfeng on 6/19/17.
*/
public class Bubble {
public static void main(String[] args) {
int[] nums = {10, 2, 11, 8, 7};
nums = bubbleSort(nums);
System.out.println(Arrays.toString(nums));
}
/**
* 冒泡排序
* @param nums 待排序數(shù)字序列
* @return 排好序的數(shù)字序列
*/
private static int[] bubbleSort(int[] nums) {
for (int i = 0; i < nums.length; i++) {
for (int j = 0; j < nums.length - i - 1; j++) {
if (nums[j] > nums[j + 1]) {
int temp = nums[j];
nums[j] = nums[j + 1];
nums[j + 1] = temp;
}
}
}
return nums;
}
}
Python3
#冒泡排序
def bubble_sort(nums):
for i in range(len(nums)):
for j in range(len(nums) - i - 1):
if nums[j] > nums[j + 1]:
temp = nums[j]
nums[j] = nums[j + 1]
nums[j + 1] = temp
return nums
nums = [10, 2, 11, 8, 7]
nums = bubble_sort(nums)
print(nums)
以上這篇比較排序之冒泡排序的實(shí)現(xiàn)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
mybatis抽取基類BaseMapper增刪改查的實(shí)現(xiàn)
目前項(xiàng)目當(dāng)中使用mapper.xml文件方式對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作,但是每個(gè)里邊都有增/刪/改/查,為了方便開(kāi)發(fā),把這些公共的代碼提取出來(lái),不用當(dāng)做基類,不用每個(gè)Mapper文件都寫(xiě)了,本文就詳細(xì)的介紹一下實(shí)現(xiàn)方法2021-09-09
java swing 實(shí)現(xiàn)加載自定義的字體
這篇文章主要介紹了java swing 實(shí)現(xiàn)加載自定義的字體,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-11-11
SpringBoot如何使用MyBatisPlus逆向工程自動(dòng)生成代碼
本文介紹如何使用SpringBoot、MyBatis-Plus進(jìn)行逆向工程自動(dòng)生成代碼,并結(jié)合Swagger3.0實(shí)現(xiàn)API文檔的自動(dòng)生成和訪問(wèn),通過(guò)詳細(xì)步驟和配置,確保Swagger與SpringBoot版本兼容,并通過(guò)配置文件和測(cè)試類實(shí)現(xiàn)代碼生成和Swagger文檔的訪問(wèn)2024-12-12
Java基礎(chǔ)之創(chuàng)建虛擬機(jī)對(duì)象的過(guò)程詳細(xì)總結(jié)
本文基于虛擬機(jī)HotSpot和常用的內(nèi)存區(qū)域Java堆深入對(duì)象分配、布局和訪問(wèn)的全過(guò)程,文中有非常詳細(xì)的圖文解說(shuō),對(duì)正在學(xué)習(xí)java的小伙伴們很有幫助,需要的朋友可以參考下2021-05-05
基于NIO的Netty網(wǎng)絡(luò)框架(詳解)
下面小編就為大家?guī)?lái)一篇基于NIO的Netty網(wǎng)絡(luò)框架(詳解)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-06-06
詳解Java對(duì)象創(chuàng)建的過(guò)程及內(nèi)存布局
今天給大家?guī)?lái)的文章是Java對(duì)象創(chuàng)建的過(guò)程及內(nèi)存布局,文中有非常詳細(xì)的圖文示例及介紹,需要的朋友可以參考下2021-06-06

