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

冒泡排序

时间:2023-04-23 21:35:14浏览次数:42  
标签:arr int cin 冒泡排序 ++ flag

#include<iostream>
using namespace std;
int main()
{
ios::sync_with_stdio(0);
cin.tie(0);
int n, i, j, t, x, flag = 0;
cin >> n;
int* arr = new int[n];
for (i = 0; i < n; i++)
cin >> arr[i];
for (i = 0; i < n; i++)
{
for (j = n - 1; j > i; j--)
{
if (arr[j] < arr[j - 1])
{
t = arr[j];
arr[j] = arr[j - 1];
arr[j - 1] = t;
flag = 1;
}
}
if (flag == 0)
break;
for (x = 0; x < n; x++)
cout << arr[x] << " ";
cout << endl;
flag = 0;
}
delete []arr;
return 0;
}

 

标签:arr,int,cin,冒泡排序,++,flag
From: https://www.cnblogs.com/atrue/p/17347811.html

相关文章

  • 冒泡排序
    #define_CRT_SECURE_NO_WARNINGS1#include<stdio.h>intmain(void){ intarr[4]={1,3,2,'\0'};//加上'\0'后由数组变成字符串 inti,j,temp; for(i=0;i<2;i++) { for(j=0;j<3-i-1;j++) {  if(arr[j]>arr......
  • 冒泡排序
    1,问题描述:对N个整数(数据由键盘输入)进行升序排列。2.问题分析:对于N个数因其类型相同,我们可利用数组进行存储。冒泡排序是在两个相邻元素之间进行比较交换的过程将一个无序表变成有序表。冒泡排序的思想:首先,从表头开始往后扫描数组,在扫描过程中逐对比较相邻两个元素的大小。若相......
  • 指针配合数组和函数案例(冒泡排序)
    #include<iostream>usingnamespacestd;voidmaopao(int*arr,intlen){ for(inti=0;i<len-1;i++) { for(intj=0;j<len-i-1;j++) { if(arr[j]>arr[j+1]) { inttemp=arr[j]; arr[j]=arr[j+1]; arr[j+1]=temp; } } }}voidprintf(int*arr,in......
  • 冒泡排序
    问题:对N个整数,由键盘输入,进行升序排序。设计:首先定义一个数组,可以盛放n个元素,利用for循环输入数组中每个元素的值,定义for循环j=1,j<=n-1,j++经过举例,需要n-1个轮回,j的for循环中嵌套i的for循环,i=0;i<n-j,i++经过举例,每次比较的次数为n-j次,因为j次轮回时,最后的j个元素就已经是按顺序......
  • 冒泡排序
    问题描述:键入N个整数进行升序排序。 1.第一行输入N表示输入的数字的个数  2.用循环输入数字;  3.定义i控制比较次数,定义j控制每次比较的次数;  4.如果后面的数小于前面的数,将两数位置交换。 #include<iostream>usingnamespacestd;intmain(){ intN,a[1000]; ......
  • 1.8冒泡排序
    1.问题描述把N个整数按照升序排列2.问题分析。利用数组储存,然后相邻数组进行排序。3.代码#include<iostream>#include<string>usingnamespacestd;intmain(){ intn[10]; inti,j; inttemp;  cout<<"请输入十个数字!"<<endl; for(i=0;i<10;i++){ cin>&......
  • 第六周--冒泡排序
    题目描述读入N个整数,利用冒泡排序法对这些数排序,输出排序后的N个数,两个数之间用空格间隔。这里排序指的是升序。输入格式两行,第一行一个正整数N,表示待排序的数的个数。第二行为N个整数。输出格式一行,排序后的N个数。输入输出样例输入 542451输出 124......
  • 冒泡排序
    冒泡排序的个人理解:<!--冒泡排序--><script>vararr=[9,8,7,6,5,4,3,2,1]//定义一个数组for(letj=0;j<arr.length-1/*倒数第二论比较剩下最小值后,不必再进行下一次比较*/;j++){for(leti=0;i<arr.length......
  • 冒泡排序
    自然语言解决问题:冒泡排序通过循环将数组中的数字依次进行排序流程图: 具体代码:#include<stdio.h>#defineN10intmain(){inti,j,a[N],t,count=0;printf("请为数组元素赋初值:\n");for(i=0;i<N;i++)scanf("%d",&a[i]);for(i=1;i<=N-1;i++)......
  • 冒泡排序
    1.问题描述:对N个数字进行冒泡排序;2.问题分析:N个数字可以用数组来进行储存数据,从头开始进行扫描,将目标与相邻的一个进行比较,如果小于则两个数字交换,一轮结束后最小的数字则到最后,第二轮开始时减小便利次数,因为最后一个数字在第一次时已经就是最小的了,遍历N-1次后,则数据会从大到小......