文章详情页
java中关于直接插入排序遇到的问题。
浏览:283日期:2024-02-05 09:40:18
问题描述
在研究直接插入排序的时候,写了个代码,如下:
static void zjcr1(int[] a) {int i,j,temp;//由于比较的时a[j]>a[j+1],所以i的循环条件是a.length-1for(i=1;i<a.length-1;i++){for(j=0;j<i+1;j++) {if(a[j]>a[j+1]){ temp = a[j+1]; a[j+1] = a[j]; a[j] = temp;} }} }
只看逻辑的话if(a[j]>a[j+1])这个地方是不可以完成排序的,但是,实际代码执行后,可以完成数组的排序,看了好久页没看明白,大家帮忙看一下。。。
问题解答
回答1:你用的测试用例不对,试试这个
new int[] {3,2,4,1,7,0,5}
结果:
[1, 2, 3, 0, 4, 5, 7]
建议还是用比较标准的排序方式
标签:
java
相关文章:
1. docker容器呢SSH为什么连不通呢?2. Docker for Mac 创建的dnsmasq容器连不上/不工作的问题3. docker网络端口映射,没有方便点的操作方法么?4. docker api 开发的端口怎么获取?5. 前端 - 类到底该如何去命名 .newsList 这种的命名难道真的不是过度语义化吗?~6. 请问“由于 Cookie “PHPSESSID”的“SameSite”属性设置为“None”,但缺少“Secure”属性,此 Cookie 未来将被拒绝。”请问出现这个问题怎么办?7. 如何解决Centos下Docker服务启动无响应,且输入docker命令无响应?8. docker gitlab 如何git clone?9. docker images显示的镜像过多,狗眼被亮瞎了,怎么办?10. Hbuilder中的phpMyAdmin访问题
排行榜

网公网安备