中国遵义门户网站,网站制作哪家好,下载app的软件并安装,北京百度推广电话冒泡排序#xff1a; 原理: 将关键字较小的值不断地上浮#xff0c;将关键字值较大的不断下沉#xff1b;时间复杂度#xff1a;O(n^2)空间复杂度#xff1a;最优#xff08;即已经排好序#xff09;为0#xff0c;平均空间复杂度为O(1);核心代码#xff1a;for(int i…冒泡排序 原理: 将关键字较小的值不断地上浮将关键字值较大的不断下沉时间复杂度O(n^2)空间复杂度最优即已经排好序为0平均空间复杂度为O(1);核心代码 for(int i0;in;i){ for(int ji;jn;j){ if(num[i]num[j]){//数值较大的数进行交换下沉 int temp; tempnum[i]; num[i]num[j]; num[j]temp; } } } 【Java实现完整代码】 package paixu; /** * author xpengfei */ import java.util.Scanner; /* * 效率最低的冒泡排序 * 说明冒泡排序的时间复杂度符合O(n^2)。 * * 时间复杂度最优与最差都需要[n*(n-1) ] / 2次比较所以时间复杂度为O(n^2). * 空间复杂度最优即已排好序空间复杂度为0平均空间复杂度为O(1)。 */ public class sortOne { Scanner inputnew Scanner(System.in); private int[]num;//存放随机数数组 private int n;//待输入的数组规模n public sortOne(){//构造函数初始化数组 System.out.println(请输入数组大小N的值); ninput.nextInt(); numnew int[n]; System.out.println(随机生成的数组如下); for(int i0;in;i){ num[i](int)(Math.random()*1000); System.out.println(num[i]); } } public void sort(){//冒泡排序核心算法 for(int i0;in;i){ for(int ji;jn;j){ if(num[i]num[j]){//数值较大的数进行交换下沉 int temp; tempnum[i]; num[i]num[j]; num[j]temp; } } } } public void displayResult(){//该函数将排好序的数组进行有序输出 System.out.println(数组排序后的结果为); for(int i0;in;i){ System.out.println(num[i]); } } public static void main(String []args){ sortOne sonenew sortOne(); sone.sort(); sone.displayResult(); } } 转载于:https://www.cnblogs.com/xpfei/p/7450815.html