关于VC中的栈溢出 求解!!!!
本帖最后由 ☆﹎尐の潴猪 于 2013-12-11 10:01 编辑#include <stdio.h>
#define LT(x,y)x>y?0:1
#define MAXSIZE 11
typedef int KeyType;
typedef struct {
KeyType key;
} RedType;
typedef struct{
RedType r;
int length;
}SqList;
void ShellInsert(SqList & L,int dk)
{
int i,j;
for(i=dk+1;i<=L.length;i++)
if(LT(L.r.key,L.r.key))
{
L.r.key=L.r.key;
for(j=i-dk;j>0&<(L.r.key,L.r.key);j-=dk) //为什么我在调试的时候,这里的J会不满足J>0的条件?
L.r.key=L.r.key;
L.r.key=L.r.key;
}
}//ShellInsert
int main()
{
int i;
int a={0,49,38,65,97,76,13,27,49,55,04};
SqList L;
L.length=MAXSIZE;
for(i=1;i<MAXSIZE;i++)
L.r.key=a;
ShellInsert(L,L.length/2);
for(i=1;i<MAXSIZE;i++)
printf("%d ",L.r.key);
printf("\n");
ShellInsert(L,(L.length)/4+1);
for(i=1;i<MAXSIZE;i++)
printf("%d ",L.r.key);
return 0;
}
for(j=i-dk;j>0&<(L.r.key,L.r.key);j-=dk)
写的有问题啊是代码粘错了吗?
j>0&<(L.r.key,L.r.key); 再看看 希尔排序?被你写的好乱,没注释,看不下去。
看这个吧:http://my.oschina.net/u/819106/blog/205475有几种常见排序算法,包括希尔排序。
页:
[1]