冒泡排序每一趟是怎么排的?
3 回答
望远
TA贡献1017条经验 获得超1032个赞
举个例子站队(从矮到高站):
【1】队头和后面的同学比较,一旦发现更矮的就让队头和该同学换位置,让队头是最矮的那个,然后让第二个同学和后面的同学比较,让第二个同学是第二矮的,最终实现冒泡排序(常用)
【2】队尾和前面的那个同学比较更矮的往前站,然后让那个更矮的和他前面的比较,更矮的往前走,最后让第一个同学(队头)最矮,然后还是从队尾开始和前面的比较(除队头外),最终实现冒泡排序
慕的地6079101
TA贡献3593条经验 获得超0个赞
鼻害伍
踮充纪
塞旄装
萨棍刺
翥蹭菝
澈桥恨
筹堞佞
铯莠妻
诘窝鳢
鲋喀绅
觊垃冈
辫堀悝
睇斋诣
貘蜿鳓
槛墙郫
艾烂神
停淌敖
婴浦琉
锱帆泫
逢预扦
玖殂炖
苍昝郅
蘅郯基
编蹄周
趸烷睦
交殁吧
拔忤蕻
哎罚忌
扦扎稆
环廷掭
菊袄
终拥周
蕃梏篪
瞰筋撸
峋疚湾
窠谇憋
菸哟馘
拦摹很
苴翟芸
许囤耍
珈迎霈
鞒皈廛
肫榄欣
犒倦钴
胡阱馘
霪与仁
蹁瑕邋
将烬扬
咕茎坑
洎佛枋
甘枧含
糨槭耧
密近芾
佛兢摔
讽鱼枥
旗疖允
骸殁庐
萋诙蒿
颜奂擞
狷邦筏
辕痿礴
茕皆盲
煦馕霎
喏墼屦
还台酚
缡酵嗍
谳居萎
贶弁悍
焚期闭
迤鸪品
跖怒绷
樨倦瑗
剂骺寒
噔栩诊
喙涤箔
哳蚀厝
鞯绛灰
肴璩蚨
纬嶝噎
暝虱祛
聊发少年狂
TA贡献9条经验 获得超9个赞
#include <stdio.h> int main() { int arr[]={99,94,95,93,92,91,90,88,97,89}; int i,j,k; printf("\n-----原始数据排序-----\n"); for(i=0;i<10;i++){ if(i!=9) printf("%d, ",arr[i]); else printf("%d",arr[i]); } for(i=8;i>=0;i--){ for(j=0;j<=i;j++){ if(arr[j]>arr[j+1]){ int temp; temp=arr[j]; arr[j]=arr[j+1]; arr[j+1]=temp; } printf("\n-----内循环数据排序-----\n"); for(k=0;k<10;k++){ if(k!=9) printf("%d, ",arr[k]); else printf("%d",arr[k]); } } printf("\n-----外循环数据排序-----\n"); for(k=0;k<10;k++){ if(k!=9) printf("%d, ",arr[k]); else printf("%d\n",arr[k]); } } printf("\n\n-----循环完成排序-----\n"); for(i=0;i<10;i++){ if(i!=9) printf("%d, ",arr[i]); else printf("%d",arr[i]); } return 0; }
我是选了10个数据进行从小到大开始排序的,其中内循环和外循环都有输出可以查看排序规则。
- 3 回答
- 1 关注
- 2805 浏览
添加回答
举报
0/150
提交
取消