请教关于C或VC的排序问题,本人初学(请大家多指教) 我只接触过一点C,想用VC或者Turbo C编写各种排序的数据结构算法(例如:插入、起泡等等)的例程,请各位不吝赐教。(如果有需要我有英文winxp2600,英文win2000 2195及英文win98 2222A的原版光盘可以给做酬劳,希望大家帮忙,谢谢) 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 请有意帮忙者直接联系我email或msn:[email protected]我有具体问题请教,谢谢 其实VC中间用来排序的算法都是标准的C的算法,你去数据结构上面看看例子就是,很详细的。 数据库结构书上的算法,我学的时候使用类pscal编写的所以用到c上好像是不好用只要你知道的思想用c语言实现起来非常简单插入预起泡很简单,但是我忘了它的中心思想告诉我我帮你编,你真的有你所有的正版光盘那要很多钱,你是大款么?[email protected] 谢谢大家,我已经着手用TC编写可是递归算法的快速排序有些错误,请大虾们帮忙看看qksort(p,m,n)int m,n,p[];{int i; if(n>m) {i=split(p,m,n); qksort(p,m,i-1); qksort(p,i+1,n); } return;}static int split(p,m,n)int m,n,p[];{int i,j,k,u,t; i=m-1;j=n-1;k=(i+j)/2; if((p[i]>=p[j])&&(p[j]>=p[k]))u=j; else if((p[i]>=p[k])&&(p[k]>=p[j]))u=k; else u=i; t=p[u];p[u]=p[i]; while(i!=j) {while((i<j)&&(p[j]>=t))j=j-1; if(i<j) {p[i]=p[j];i=i+1; while((i<j)&&(p[i]<=t))i=i+1; if(i<j) {p[j]=p[i];j=j-1;} } } p[i]=t; return(i);}print(a)int a[];{int i; for(i=0;i<7;i++) printf("%d\t",a[i]); printf("\n"); }main(){int a[7],i; for(i=0;i<7;i++) {printf("input number%d:",i+1); scanf("%d",&a[i]);} qksort(a,1,7); printf("the quicksort result:\n"); print(a);}光盘是外国朋友给的,想要我可以给的,谢谢大家了 控制台程序调用MAPISendMail发现什么效果也没有啊,不能显示一个我想要的窗口。 请教关于CreateProcess的问题 怎样实现鼠标停在某个按钮上,出现一个提示信息,显示该按钮的某些属性,功能等. 服务器接受大量TCP连接的问题,高手看过来! 这几句代码是干什么用的呢? 单文档视图主框架窗口的标题怎么该? 回答这个问题100分足亦,不够再加 还有个问题:如何使无标题栏对话框在任务栏上点击时实现最大公、最小化? 救命啊:关于OnPaint() 34494为什么一发上来就有三千多的人气? 有一个让人生闷气的问题... ... 如何刷新任务栏右边的时钟那里的区域
我有具体问题请教,谢谢
[email protected]
可是递归算法的快速排序有些错误,请大虾们帮忙看看
qksort(p,m,n)
int m,n,p[];
{int i;
if(n>m)
{i=split(p,m,n);
qksort(p,m,i-1);
qksort(p,i+1,n);
}
return;
}
static int split(p,m,n)
int m,n,p[];
{int i,j,k,u,t;
i=m-1;j=n-1;k=(i+j)/2;
if((p[i]>=p[j])&&(p[j]>=p[k]))u=j;
else if((p[i]>=p[k])&&(p[k]>=p[j]))u=k;
else u=i;
t=p[u];p[u]=p[i];
while(i!=j)
{while((i<j)&&(p[j]>=t))j=j-1;
if(i<j)
{p[i]=p[j];i=i+1;
while((i<j)&&(p[i]<=t))i=i+1;
if(i<j)
{p[j]=p[i];j=j-1;}
}
}
p[i]=t;
return(i);
}
print(a)
int a[];
{int i;
for(i=0;i<7;i++)
printf("%d\t",a[i]);
printf("\n");
}main()
{int a[7],i;
for(i=0;i<7;i++)
{printf("input number%d:",i+1);
scanf("%d",&a[i]);}
qksort(a,1,7);
printf("the quicksort result:\n");
print(a);}
光盘是外国朋友给的,想要我可以给的,谢谢大家了