冒泡排序算法,分别用汇编语言,C语言,C++,java,python…

冒泡排序(Bubble Sort)是基于交换的排序,它重复走过需要排序的元素,依次比较相邻的两个元素的大小,保证最后一个数字一定是最大的,即它的顺序已经排好,下一轮只需要保证前面 n-1 个元素的顺序即可。
之所以称为冒泡,是因为最大/最小的数,每一次都往后面冒,就像是水里面的气泡一样。
排序的步骤如下:
  • 从头开始,比较相邻的两个数,如果第一个数比第二个数大,那么就交换它们位置。
  • 从开始到最后一对比较完成,一轮结束后,最后一个元素的位置已经确定。
  • 除了最后一个元素以外,前面的所有未排好序的元素重复前面两个步骤。
  • 重复前面 1 ~ 3 步骤,直到都已经排好序。

冒泡排序算法,分别用汇编语言,C语言,C++,java,python编写出来
下面是冒泡排序算法的不同语言实现示例:
1. 汇编语言:

assembly
section .data
array db 5, 2, 8, 1, 9, 3, 7, 4, 6
array_len equ $ – array
section .text
global _start
_start:
mov ecx, array_len
dec ecx
outer_loop:
mov esi, 0
inner_loop:
mov eax, [array + esi]
cmp eax, [array + esi + 1]
jg swap
inc esi
cmp esi, ecx
jle inner_loop
dec ecx
cmp ecx, 0
jg outer_loop
; 排序完成,继续其他操作或退出程序

SVIP价 5 折 永久SVIP免费

已有0人支付

2. C语言:

#include <stdio.h>
void bubbleSort(int array[], int size) {
for (int i = 0; i < size – 1; i++) {
for (int j = 0; j < size – i – 1; j++) {
if (array[j] > array[j + 1]) {
int temp = array[j];
array[j] = array[j + 1];
array[j + 1] = temp;
}
}
}
}

SVIP价 5 折 永久SVIP免费

已有0人支付

3. C++:

#include <iostream>
using namespace std;
void bubbleSort(int array[], int size) {
for (int i = 0; i < size – 1; i++) {
for (int j = 0; j < size – i – 1; j++) {
if (array[j] > array[j + 1]) {
int temp = array[j];
array[j] = array[j + 1];
array[j + 1] = temp;
}
}
}
}

SVIP价 5 折 永久SVIP免费

已有0人支付

4. Java:

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

}

SVIP价 5 折 永久SVIP免费

已有0人支付

5. Python:

def bubbleSort(array):
size = len(array)
for i in range(size – 1):
for j in range(size – i – 1):
if array[j] > array[j + 1]:
array[j], array[j + 1] = array[j + 1], array[j]

SVIP价 5 折 永久SVIP免费

已有0人支付

这些示例展示了使用不同编程语言实现冒泡排序算法的方式。请根据您选择的编程语言,使用相应的示例来实现冒泡排序算法。


扫码关注微信公众号,免费查看完整算法内容。

下载说明:
1.本站资源都是白菜价出售,同样的东西,我们不卖几百,也不卖几十,甚至才卖几块钱,一个永久会员能下载全站100%源码了,所以单独购买也好,会员也好均不提供相关技术服务。
2.如果源码下载地址失效请联系站长QQ进行补发。
3.本站所有资源仅用于学习及研究使用,请必须在24小时内删除所下载资源,切勿用于商业用途,否则由此引发的法律纠纷及连带责任本站和发布者概不承担。资源除标明原创外均来自网络整理,版权归原作者或本站特约原创作者所有,如侵犯到您权益请联系本站删除!
4.本站站内提供的所有可下载资源(软件等等)本站保证未做任何负面改动(不包含修复bug和完善功能等正面优化或二次开发);但本网站不能保证资源的准确性、安全性和完整性,由于源码具有复制性,一经售出,概不退换。用户下载后自行斟酌,我们以交流学习为目的,并不是所有的源码都100%无错或无bug;同时本站用户必须明白,【安安资源网】对提供下载的软件等不拥有任何权利(本站原创和特约原创作者除外),其版权归该资源的合法拥有者所有。
5.请您认真阅读上述内容,购买即以为着您同意上述内容,由于源码具有复制性,一经售出,概不退换。
安安资源网 » 冒泡排序算法,分别用汇编语言,C语言,C++,java,python…