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

冒泡排序

时间:2023-06-30 10:00:48浏览次数:39  
标签:tmp sz arr int 冒泡排序 ++ flag

#include <stdio.h>

void bubble_sort(int* arr, int sz)
{
	//确定冒泡函数的趟数
	int i = 0;
	for (i = 0; i < sz - 1; i++)
	{
		//每一趟冒泡排序
		int j = 0;
		int flag = 0;
		for (j = 0; j < sz - 1 - i; j++)
		{
			if (arr[j] > arr[j + 1])
			{
				int tmp = 0;
				tmp = arr[j + 1];
				arr[j + 1] = arr[j];
					arr[j] = tmp;
					flag = 0;//本趟排序数据不完全有序
			}
		}
		if (flag==1)
		{
			break;
		}

	}
}
int main()
{
	int arr[] = { 0,1,2,4,56,8,90,1,3 };
	int i = 0;
	int sz = sizeof(arr) / sizeof(arr[0]);
	bubble_sort(arr,sz);
	//arr是数组,所以传参是传首元素的地址&arr[0]
	printf("arr[bubble]=");
	for (i = 0; i < sz; i++)
	{
		printf("%d  ", arr[i]);
	}

	return 0;
}

冒泡排序_#include

标签:tmp,sz,arr,int,冒泡排序,++,flag
From: https://blog.51cto.com/u_16168351/6588548

相关文章

  • 编程初学者入门7_公务员面试现场打分。有7位考官,从键盘输入若干组成绩,每组7个分数(百分
    题目描述公务员面试现场打分。有7位考官,从键盘输入若干组成绩,每组7个分数(百分制),去掉一个最高分和一个最低分,输出每组的平均成绩。输入描述:一行,输入7个整数(0~100),代表7个成绩,用空格分隔。输出描述:一行,输出去掉最高分和最低分的平均成绩,小数点后保留2位,每行输出后换行。示例1我的......
  • 26.冒泡排序
    每当皇帝选妃时,首席太监小桂子总是忍不住在旁边偷窥这些候选的美女,有一次他发现做为伴读小书童的你居然犯了个常人都可以轻易看出的错误,有几位候选的美女站成如下一排:当我们采用前面的选择排序时,我们仍然要将候选者遍历5遍,才能完成最终的排序,但其实,本身这些美女除了第一个外,已经......
  • Python 算法之冒泡排序
    Python算法之冒泡排序冒泡排序冒泡排序算法的原理如下:(从后往前)1、比较相邻的元素。如果第一个比第二个大,就交换他们两个。2、对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。3、针对所有的元素重复以上的步骤,除了最后一......
  • 冒泡排序 最大的在最后面
    publicclassMaoPao{publicstaticvoidmain(String[]args){//冒泡排序最大的放在最后面//定义一个数组int[]arr={11,99,0,3,5,6,5,3,5,8,1};//前一个数和后一个数比较如果后一个数大放在后面//第一位3和第二位5比较......
  • 冒泡排序
    一、冒泡排序思想:1、意思如同名字一般,冒泡。2、每一"趟“比较都产生一个最大的数,沉入底部(数组)最后。3、假设有M个数,则产生M-1趟排序。二、代码如下(默认采用JAVA):importjava.util.Arrays;publicclassDay1_MaopaoSort{publicstaticvoidmyBubblesort(int[]array){......
  • python之冒泡排序
    冒泡排序原理:;两两比较,将(大、小)的元素往右移importrandoma=random.sample(range(0,10),4)#随机生成4个1到10之内的数字lenth=len(a)#获取长度print(a)#需要冒泡排序的列表#比较(趟数),最后一趟无需比较,所以减1forjinrange(lenth-1):#-1:最后一......
  • JS排序:插入排序 冒泡排序 选择排序
    1.插入排序 1letarr=[30,5,7,60,22,18,29]2letfn=arr=>{3for(letj=1;j<arr.length;j++){4letcurrent=arr[j]5letpreIdx=j-16while(preIdx>=0&&arr[preIdx]>......
  • java常见的排序算法(冒泡排序、选择排序、插入排序、shell排序、归并排序、堆排序、快
    (文章目录)本文简单的介绍了java常见的几种排序。所有的排序均是一个数组由小到大进行排序。一、冒泡排序1、效率表现和适用范围效率O(n²)适用于排序小列表2、算法实现publicvoidbubbleSortArray(int[]a){ intn=a.length; for(inti=1;i<n;i++){ fo......
  • 算法题:冒泡排序
    functionbubbleSort($arr){$len=count($arr);//获取要排序数组的长度for($i=0;$i<$len;$i++){//外层循环遍历整个数组for($j=0;$j<$len-$i-1;$j++){//内层循环用于比较相邻元素,次数随外层循环进行而减少if(......
  • 数据结构与算法分析(Java语言描述)(3)—— 冒泡排序
    伪代码doswapped=falsefori=1toindexOfLastUnsortedElement-1ifleftElement>rightElementswap(leftElement,rightElement)swapped=truewhileswappedintn=arr.length;booleanswapped;do{swapped=false;......