首页 > 其他分享 >一维数组之冒泡排序

一维数组之冒泡排序

时间:2023-07-19 14:36:49浏览次数:36  
标签:arr 一维 temp int 冒泡排序 数组 cout

从b站上黑马程序员的C++课里学到的冒泡排序

 

 1 #include <iostream>
 2 using namespace std;
 3 int main()
 4 {
 5     int arr[6] = { 2,4,1,6,7,3 };
 6     for (int i = 0; i < 6; i++) //数组遍历
 7     {
 8         cout << arr[i] << " ";
 9     }
10     cout << endl;
11     for (int i = 0; i < 6 - 1; i++)//总共排序轮数为 元素个数-1,
12     {
13         for (int j = 0; j < 6 - i - 1; j++)//内层循环对比,次数 = 元素个数 - 当前轮数 - 1
14         {
15             if (arr[j] > arr[j + 1])//如果第一个数字比第二个数字大,交换两个数字
16             {
17                 int temp = arr[j];
18                 arr[j] = arr[j + 1];
19                 arr[j + 1] = temp;
20             }
21 
22         }
23     }
24     for (int i = 0; i < 6; i++)
25     {
26         cout << arr[i] << " ";
27     }
28     return 0;
29 
30 }

 

运行结果显示:

 

标签:arr,一维,temp,int,冒泡排序,数组,cout
From: https://www.cnblogs.com/romantichuaner/p/17565459.html

相关文章

  • 数组
    一、数组1、数组的定义1)数组是相同类型数据的有序集合2)数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成3)每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问 2、数组的声明创建1)必须先声明数组变量,才能在程序中使用数组。声明数组变量的语......
  • 【Javascript】数组扩展方法:根据key重新分组
    1//数组扩展:根据key重新分组2//field:按什么字段分组3Array.prototype.GroupByKey=function(field)4{5varoriginalArr=this6lettempArr=[]7letresultData=[]8for(leti=0;i<originalArr.length;i++)9{10......
  • 08-数组
    数组介绍数组可以存放多个同一类型的数据。数组也是一种数据类型,是引用数据类型。即:数组就是一组数据。 ......
  • 2023-07-18:给你一个正整数数组 nums,请你移除 最短 子数组(可以为 空), 使得剩余元素的 和
    2023-07-18:给你一个正整数数组nums,请你移除最短子数组(可以为空),使得剩余元素的和能被p整除。不允许将整个数组都移除。请你返回你需要移除的最短子数组的长度,如果无法满足题目要求,返回-1。子数组定义为原数组中连续的一组元素。输入:nums=[3,1,4,2],p=6。输出:1。答......
  • 2023-07-18:给你一个正整数数组 nums,请你移除 最短 子数组(可以为 空), 使得剩余元素的 和
    2023-07-18:给你一个正整数数组nums,请你移除最短子数组(可以为空),使得剩余元素的和能被p整除。不允许将整个数组都移除。请你返回你需要移除的最短子数组的长度,如果无法满足题目要求,返回-1。子数组定义为原数组中连续的一组元素。输入:nums=[3,1,4,2],p=6。输......
  • 写代码,找出两个字符串数组中相同的字符串存到新的字符串中,使用hashset
    时间复杂度:O(m+n)packageleetcode.arrayAndList;importjava.util.ArrayList;importjava.util.HashSet;importjava.util.Set;publicclassCommentStr{publicstaticvoidmain(String[]args){ArrayListans=newArrayList();//两个字符......
  • hdu 2227 Find the nondecreasing subsequences (树状数组+dp+离散化)
    题意:给定一个长度为n(n<=100000)的整数序列,求其中的递增序列的个数。对于某些序列中的递增序列的个数是可以用dp来求解的,其状态转移方程为:dp[i]=sum(dp[j])+1,j<i&&a[j]<a[i]根据状态转移方程可以得知这样dp的时间复杂度为O(n^2),而对于题目给定的10^6的数量级来说,这样......
  • js 判断对象数组里面是否存在重复数据
    可以使用JavaScript来判断对象数组中是否存在重复数据。下面是一种常见的解决方法:functionhasDuplicate(array){constseen=newSet();for(leti=0;i<array.length;i++){constobjString=JSON.stringify(array[i]);if(seen.has(objString))......
  • PHP实现冒泡排序
    冒泡排序的原理:1.比较相邻的元素。如果第一个比第二个大,就交换他们两个。2.对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。3.针对所有的元素重复以上的步骤,除了最后一个。4.持续每次对越来越少的元素重复上面的步骤,直到没有......
  • 代码随想录算法训练营第三十三天| 01背包问题 二维 01背包问题 一维 416. 分割等和
    01背包问题二维 要求:有一个背包,他只能装4KG,分别有三个物品:115;320;430——》需要物品价值最大 dp[i][j]含义:在放物品I的时候在J背包容量下的物品最大值递推公式: 1,不放当前物品:dp[i-1][j]2,放当前物品:(dp[i-1][j])->不应该是在当前容量下,i-1的最大价值,应该是:dp[i-......