课堂提问冒泡排序

课堂提问冒泡排序


想问一下第九行为什么要把a放在n的数组中啊,for这里的代码省略了不可以吗?第14,16行为什么是a.length-i-1呢?直接a.length然后下一个for用a.length-1不可以吗,助教老师,学霸们请帮我解答一下

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

1.第九行n表示的是每次循环从数组a中取出的元素。for循环是用来在排序前遍历输出数组中的元素的,为了与排序后的结果作对比。

2.因为首先要保证访问数组时下标不越界,其次内重循环控制每趟排序,已排好序的元素不参与此趟排序,所以是a.length-i-1。

  • Rvie 提问者 #1
    第二个还是不太明白,可以具体说明一下怎么样的过程吗?
    2017-12-07 16:05:55
  • 慕粉0907203 回复 提问者 Rvie #2
    视频里讲的很清楚的,你去好好看下吧。比如有4个数据参与冒泡排序,第一趟排序比较三次,最后将最大的数放在最后;下一次将前三个数进行比较,需要比较两次,再将本次最大的数放在倒数第二个位置。
    2017-12-07 17:34:04
  • Rvie 提问者 回复 慕粉0907203 #3
    哦哦,懂啦,谢谢你
    2017-12-07 19:54:21
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师