老师,为什么第二个for循坏,不可以像之前那样拆分开来写,就是将arr[j-1]>e写到这个for循环下面的if语句中,这样会出错??
来源:2-6 插入排序法的改进
寻找光明的黑马
2017-04-10
写回答
3回答
-
不会出错,就是一个具体的代码编写风格问题而已,可以自己试试看拆开来写哦。这种逻辑编写的代码风格没有对错之分,找到自己看得舒服的就好了,其实我也更习惯拆开来写呢:)
042017-04-12 -
寻找光明的黑马
提问者
2017-04-12
我截取其中函数部分,前面的运行正确,而后面的可以运行但是排序错误(我用php写的) function insert($a){ $len=count($a); for($i=1;$i<$len;$i++){ $t=$a[$i]; for($j=$i;$j>0&&$t<$a[$j-1];$j--){ $a[$j]=$a[$j-1]; } $a[$j]=$t; } return $a; }
这是后面的 function insert($a){ $len=count($a); for($i=1;$i<$len;$i++){ $t=$a[$i]; for($j=$i;$j>0;$j--){ if($t<$a[$j-1]){ $a[$j]=$a[$j-1]; } } $a[$j]=$t; } return $a; }
022017-04-12 -
我是帅气小裁缝
2017-04-10
不会出错啦,只是这样写在for()里面更加清晰一点-
00
相似问题