非常诡异,求高手指教
void ShellSort(int *list,int length) //希尔排序
{
int i;
int j,m,n;
int temp;
i=length;
while(i>=1)
{
i=i/2;
for(j=0;j<i;j++)
{
for(m=j;m+i<length;m=m+i)
{
n=m+i;
if(list[m]>list[n])
{
temp=list[n];
while(list[m]>temp&&m>0)
{
list[m+i]=list[m];
m=m-i;
}
list[m+i]=temp;
}
m=n-i;
}
}
}
}
那个while循环里(list[m]>temp&&m>0)这样子写的话如要给10000数排序就会报错,但(m>0&&list[m]>temp)反过来的话就不会报错,这是为什么啊(报错是指运行时停止工作,如果给少点数排序如100个数,两个都没事),非常诡异。。。
{
int i;
int j,m,n;
int temp;
i=length;
while(i>=1)
{
i=i/2;
for(j=0;j<i;j++)
{
for(m=j;m+i<length;m=m+i)
{
n=m+i;
if(list[m]>list[n])
{
temp=list[n];
while(list[m]>temp&&m>0)
{
list[m+i]=list[m];
m=m-i;
}
list[m+i]=temp;
}
m=n-i;
}
}
}
}
那个while循环里(list[m]>temp&&m>0)这样子写的话如要给10000数排序就会报错,但(m>0&&list[m]>temp)反过来的话就不会报错,这是为什么啊(报错是指运行时停止工作,如果给少点数排序如100个数,两个都没事),非常诡异。。。
...全文
相关推荐
浅谈SpringMVC HandlerInterceptor诡异问题排查
本文将主要介绍如何排查SpringMVC HandlerInterceptor中的诡异问题,解决问题的思路和方法,并对相关的源代码进行分析和解释。
诡异通道Chrome插件-crx插件
【诡异通道Chrome插件-crx插件】是一个专为Google Chrome浏览器设计的扩展程序,它支持英语和简体中文两种语言。
易语言诡异心理游戏
诡异心理游戏的"诡异"二字,暗示了游戏可能包含一些非传统或者出乎意料的设计,可能会运用到心理学中的认知偏误、预期管理、心理暗示等概念。
杭电1180解题报告 诡异的楼梯
### 一、问题背景杭电1180题“诡异的楼梯”涉及到的是一个迷宫游戏。玩家需要在迷宫中找到一条从起点到终点的路径。
CTabCtrl的诡异实例
在本文中,我们将深入探讨`CTabCtrl`的使用以及可能遇到的一些诡异实例。1.


