关于使用冒泡排序法容易陷入的误区( i 从 0 开始, 还是从 1 开始)

今天同学做题需要先排一下序,于是用了冒泡排序法,但他习惯 i 从 1 开始,现贴一下他的代码:

for(i=1;i<n;i++)
            for(k=1;k<n-i-1;k++)
            {
                if(end[k]>end[k+1])
            }

然而这样是不对的, 因为此时 k  的最大值为n-3, 而应该为n-2;修改后的代码为:

for(i=1;i<n;i++)
            for(k=1;k<n-i;k++)
            {
                if(end[k]>end[k+1])
                {


 

所以平时应该注意这些细节,多独立思考哈。。。。


 

每天训练发现我比别人做的好慢,但是理解的更深刻,如果一开始学一个新知识点就搜模板,那么这样的人是走不远的,毕业之后带走的只有思维,什么荣誉,奖杯都已经不重要了。
原文地址:https://www.cnblogs.com/6bing/p/3931284.html