编程算法--排序
冒泡排序
冒泡排序的基本思想是通过不断比较和交换相邻元素,将较大的元素逐步"冒泡"到数组末尾,从而实现整个序列的有序排列。
冒泡排序是一种简单直观的排序算法
从头开始遍历数组,每次比较相邻的两个元素;
如果前一个元素比后一个大,就交换它们的位置;
一轮遍历后,最大的元素会被"冒泡"到数组末尾;
下一轮只需遍历未排序的部分,重复上述过程;
直到没有需要交换的元素为止,排序完成。
JAVA代码示例
public class Study09 {
public static void main(String[] args){
//初始化list_1列表
int[]list_1={23,54,12,24,65,7,9,10,44,57,78,245,76,89,54};
//遍历整个列表,输出列表中的元素
for (int i=0;i<list_1.length;i++){
System.out.print(list_1[i]+" ");
}
System.out.println(); //换行
//外层函数,决定循环的次数
for (int i=1;i<list_1.length;i++){
//内层函数,比较相邻两个数字,进行排序
for (int j=0;j<list_1.length - i;j++){
if (list_1[j]>list_1[j+1]){
//排序
int temp=list_1[j];
list_1[j]=list_1[j+1];
list_1[j+1]=temp;
}
}
}
//循环输出排序后的序列
for (int i=0;i<list_1.length;i++){
System.out.print(list_1[i]+" ");
}
}
}
Python代码示例
#定义一个数组
arr = [23,54,12,24,65,7,9,10,44,57,78,245,76,89]
#打印未排序数组
print(arr)
#排序
for i in range(len(arr)):
for j in range(len(arr)-1):
if arr[j] > arr[j+1]:
temp = arr[j]
arr[j] = arr[j+1]
arr[j+1] = temp