永发信息网

请解释一下冒泡法中的这两句要怎么理解 for(j=0;j<9;j++) for(i=0;i<9-j;i++),越详细越好,谢谢

答案:3  悬赏:70  手机版
解决时间 2021-03-21 16:57
请解释一下冒泡法中的这两句要怎么理解 for(j=0;j<9;j++) for(i=0;i<9-j;i++),越详细越好,谢谢
最佳答案
你要把一列数从小到大排列,你会怎么做?得一个一个去看选出最大的然后把最大的放后面去,当你选出了一个最大的数,第二次再去选第二大的数的时候,你还有必要第一大的数来进行比较?答案肯定是不用,所以for(i=0;i<9-j;i++)中i<9-j,即已经选出的数不需要进入到下一轮的比较!
全部回答
遍历列表搜索最小或最大的然后插到最前面从后一个继续检索小的值
对长度为10的数据表进行排序,总共要冒泡9次,所以外层循环是9,每一次冒泡(挨个比较)要进行比较的次数是 9-j次,因为没冒泡一次确定一个排序位,比如j=0,第一次起泡,一直要比较九次才能将最大的放在最后一个位置 a[9],然后j=1的时候是要确定a[8]是哪个值 所以只需要进行 9-1=8次的比较。追问那为什么要有i和j两个进行计数呢?我是小白,求解释追答当然要两个啦,j是记冒泡的趟数,i是记每一趟要比较的次数,每一趟会确定一个最大数,所以随着趟数增加需要比较的次数会越来越少,i<9-j
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
自考本科文凭在大城市找工作难吗?
公司邮箱满了怎么办,网易邮箱空间占满,在删
根据今年的新交规,2014年之前的非现场罚单要
下列句中划线词语使用有误的一项是。(2分)A
请问东莞虎英公园在哪个位置钓鱼?是多少钱一
鼎艺楼梯这个地址在什么地方,我要处理点事
2013年12月8日 请问再过100天是多少年月日???
范围:亚洲的东南部,包括________半岛和____
骑车前脚掌有点麻怎么回事
如果直线Ax+By+C=0的倾斜角为45° 则有关系式
金超威电池价格怎样
鸿景酒店地址在哪,我要去那里办事
百度糯米销售好做吗,百度糯米销售怎么样
bcd-345wdgfu1 345升l 多门冰箱 变频节能 风
单选题下列变化属于化学变化的是A.棒冰融化B.
推荐资讯
香港林家明是大骗子 我让一个香港人叫林家明
失败也是一种收获 作文
跪求Acronis True Image启动盘
Is it the country you studied you are go
单选题中华民族精神的作用主要表现在①始终是
大象扇子用英语怎么说,大象用英语怎么读读出
从长沙坐高铁去南岳,要在衡阳哪站下,然后怎
I will always be with you until the end of
人事代理人员如何办理职称初定?
大海是什么样的?
潜泳怎样换气?
hcgmom值异常是什么意思
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?