一个冒泡排序小疑问 大家帮忙
public static void bsort()
{
int i,j,temp = 0;
for(i=0;i<data.length-1;i++)
{
for(j=data.length-1;j>i;j--)
{
if (data[j-1]>data[j])
{
temp = data[j];
data[j] = data[j-1];
data[j-1] = temp;
}
}
}
}
为什么这里
for(i=0;i<data.length-1;i++)
{
for(j=data.length-1;j>i;j--)
要用 data.length-1 啊??
求解 !! --------------------编程问答-------------------- 如果用 i<data.length
会出现 Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 10
数组下标越界 错误 --------------------编程问答-------------------- 不-1的话data[j]不会越界么~~ --------------------编程问答-------------------- 就是因为这样才这样写啊!一般这种情况你打个断点就明白了。 --------------------编程问答-------------------- 数组下标是从0开始的
比如array(9). 它的下标是 array[0]到array[8]. --------------------编程问答--------------------
对 就是这样 你打个断点就明白了
补充:.NET技术 , ASP.NET