首页 > 其他分享 >冒泡排序法

冒泡排序法

时间:2023-02-06 21:05:24浏览次数:35  
标签:cout int 冒泡排序 关键字 flag 排序


冒泡排序法的基本思想是:
对待排序记录关键字从后往前(逆序)进行多遍扫描,当发现相邻两个关键字的次序与排序要求的规则不符时,就将这两个记录进行交换。这样,关键字较小的记录将逐渐从后面向前面移动,就象气泡在水中向上浮一样,所以该算法也称为气泡排序法。

冒泡排序法_i++

# include <iostream>

using namespace std;

void Sort(int a[],int n){

int i,j,t,flag = 0;

for(i=0;i<n;i++){
for(j=i+1;j<n;j++){
if(a[i]>a[j]){
t = a[i];
a[i] = a[j];
a[j] = t;
flag = 1;
}
}
}
}

//优化的冒泡排序
void Sort1(int a[],int n){

int i,j,t,flag = 0;
for(i=0;i<n-1;i++){//这里n-1的原因,6个数走5遍
for(j=n-1;j>0;j--){
if(a[j-1]>a[j]){
t = a[j-1];
a[j-1] = a[j];
a[j] = t;
flag = 1;
}
}

if(flag==0){
break;
}else{
flag = 0;
}
}


}




//升序
int main(){

int a[]={1,100,87,65,23,55,63,55,19,3};


Sort1(a,10);

for(int i=0;i<10;i++){
cout<<a[i]<<" ";
}
cout<<endl;

return 0;
}


标签:cout,int,冒泡排序,关键字,flag,排序
From: https://blog.51cto.com/u_15955675/6040498

相关文章

  • 冒泡排序
    importjava.util.Arrays;publicclassDemo07{publicstaticvoidmain(String[]args){int[]a={1,2,3,6,4,9,0};System.out.println(Arrays.toS......
  • 冒泡排序——C语言描述
    冒泡排序——C语言描述目录冒泡排序——C语言描述0测试用例框架1定义2代码4测试用例0测试用例框架https://blog.csdn.net/m0_59469991/article/details/127137119?......
  • 冒泡排序+快速排序+插入排序(实现)
    王道督学营16/*Description读取10个整型数据1263589541356503844,然后通过冒泡排序,快速排序,插入排序,分别对该组数据进行排序,输出3次有序结果,每个数的输出占3个......
  • NOI2022冒泡排序
    首先考虑A性质的点。区间最小值为\(1\)的限制等价于要求区间所有值为\(1\)。另外一种限制等价于区间不全为\(1\)。把一定是\(1\)的做一个区间覆盖。其他部分暂且......
  • 冒泡排序(Bubble Sort)
    一、算法概述1.1算法分类十种常见排序算法可以分为两大类:比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),因此也称为非线性时间比较类排......
  • 【八大数据排序法】冒泡排序法的图形理解和案例实现 | C++
    第十四章冒泡排序法:::hljs-center目录第十四章冒泡排序法●前言●认识排序●一、冒泡排序是什么?1.简要介绍2.具体情况3.算法分析●二、案例实现1.案......
  • p57 Arrays 类,冒泡排序
    Arrays类数组的工具类java.util.Arraysutil--工具包由于数组对象本身并没有什么方法可以供我们调用,但API中提供了一个工具类Arrays供我们使用,从而可以对数据对象进行......
  • Js学习之 ----- 冒泡排序
    用最直观的举例:把数组:[7,6,5,4,3,2,1]从小到大排序【从小到大】冒泡排序的关键:每一轮,把相邻元素进行比较,把最大的元素排到最后下一轮,进行相同的操作,最后的元素不用再......
  • 17种编程语言实现排序算法-冒泡排序
    开源地址​​https://gitee.com/lblbc/simple-works/tree/master/sort​​覆盖语言:C、C++、C#、Java、Kotlin、Dart、Go、JavaScript(JS)、TypeScript(TS)、ArkTS、swift、......
  • 冒泡排序
    冒泡排序是通过比较相邻两个值,如果发生逆序则进行交换,从而使小的值一直往上冒,或者大的值一直往下沉。代码实现#-*-coding=utf-8-*-#@Author:......