您现在的位置是:首页 > 护肤美妆 >正文
给定任意n个整数,按由大到小排序,并输出结果
发布时间:2022-08-25 08:57:41张萱海来源:
您好,蔡蔡就为大家解答关于给定任意n个整数,按由大到小排序,并输出结果相信很多小伙伴还不知道,现在让我们一起来看看吧!
1、数组形式。
2、解题思路: 判断比较的躺数,每趟相邻的两个数再进行比较,应用两次 for 循环具体代码:void PrintArr(int* arr, int sz){int i = 0;for (i = 0; i < sz; i++){printf("%d", *(arr + i));} return 0;}void BubbleSort(int arr[],int sz){int i = 0;for (i = 0; i < sz - 1; i++){int j = 0;for (j = 0; j < sz - i - 1; j++)//用for循环的元素个数控住多少趟{if (arr[j] > arr[j + 1]){int tmp = arr[j];arr[j] = arr[j+1];arr[j + 1] = tmp;}}}}int main(){int arr[10] = { 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 };int sz = sizeof(arr) / sizeof(arr[0]);BubbleSort(arr, sz);PrintArr(arr, sz);system("pause");return 0;}2、指针形式。
3、创建两个变量start、end,记住数组起始与结束位置元素的地址,应用两次 while 循环交换地址指针冒泡排序 :void PrintArr(int* arr, int sz){int i = 0;for (i = 0; i < sz; i++){printf("%d", *(arr + i));} return 0;}void BubbleSort(int *arr, int sz){int start = arr;int end = arr + sz - 1;//趟数while (start < end){int *cur = start;while (cur < end){if (*cur > *(cur+1)){int tmp = *cur;*cur = *(cur + 1);*(cur + 1) = tmp;}cur++;}end--;}}int main(){int arr[10] = { 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 };int sz = sizeof(arr) / sizeof(arr[0]);BubbleSort(arr, sz);PrintArr(arr, sz);system("pause");return 0;}扩展资料:算法原理冒泡排序算法的原理如下:比较相邻的元素。
4、如果第一个比第二个大,就交换他们两个。
5、对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。
6、在这一点,最后的元素应该会是最大的数。
7、针对所有的元素重复以上的步骤,除了最后一个。
8、持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。
本文就讲到这里,希望大家会喜欢。
标签:
猜你喜欢
最新文章
- 给定任意n个整数,按由大到小排序,并输出结果
- 手机截图怎样操作(手机截图)
- 什么样的爱情才是真正的爱情(什么样的爱情)
- 巴西的气候分布图片(巴西气候分布图高清)
- 淘宝机器人怎么设置(淘宝机器人自动回复怎么设置)
- 儿童散学归来早描写的是什么季节(儿童散学归来早描写的是初春还是晚春)
- 如何用手机百度搜索图片来源(手机百度怎么搜索图片来源)
- 英雄联盟dj琴女怎么换形态(dj琴女怎么切换形态)
- 网上预约驾照考试科一一直受理中是为什么(网上预约驾照考试)
- 什么是执行力如何提高执行力(什么是执行力)
- aquamarine官网(aquamarine)
- 整月电影完整版
- 缝合伤口吃什么好得快点(缝合伤口吃什么好得快)
- 高碑店市是属于哪个市(高碑店市属于哪个市)
- 月经期间能喝玫瑰花泡水吗女生(月经期间能喝玫瑰花泡水吗)
- 梅毒螺旋体特异性抗体阳性有什么症状(梅毒螺旋体特异性抗体阳性是什么病引起的)
- 2022年08月25日08时湖北鄂州疫情最新数据消息速报
- 索菱股份1362万股限售股将于8月29日起解禁上市
- 2022年08月25日08时湖北武汉疫情最新数据消息速报
- 2022年08月25日08时黑龙江伊春疫情最新数据消息速报
- ST弘高上半年净亏3725.98万元
- 2022年08月25日08时黑龙江绥化疫情最新数据消息速报
- 2022年08月25日08时黑龙江双鸭山疫情最新数据消息速报
- 天津昨日新增2例本土确诊病例