为了账号安全,请及时绑定邮箱和手机立即绑定

冒泡排序,随机出现数组下标越界异常,怎么回事?

冒泡排序,随机出现数组下标越界异常,怎么回事?

专注当下4143035 2017-01-06 08:48:55
三个图,分别是:冒泡成功,冒泡失败,数组下标越界异常?请问为什么会这样?
查看完整描述

3 回答

已采纳
?
望远

TA贡献1017条经验 获得超1032个赞

number[temp]是什么鬼。。改成temp就行。

查看完整回答
反对 回复 2017-01-06
?
蔚蓝海

TA贡献6条经验 获得超3个赞

下标从0开始到9,number.length的值10,下标越界。

for(int i = number.length - 1;i >= 0;i--) {
    for(int j = 0;j <= i-1;j++){
        if(number[j] > number[i]) {
            temp = number[j];
            number[j] = number[i];
            number[i] = temp;
         }
    }
}


查看完整回答
反对 回复 2017-01-06
?
快乐的时光

TA贡献79条经验 获得超48个赞

交换两个数的步骤错了。

int t = num[j];

num[j] = num[j+1];

num[j+1] = t;


查看完整回答
反对 回复 2017-01-06
  • 3 回答
  • 0 关注
  • 2722 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信