数据结构的习题哪一种好?
2个回答
龙石数据
2024-10-07 广告
2024-10-07 广告
在选择数据中台时,有几个关键事项需要注意:需求分析与业务匹配:不同的企业在数据处理、分析和应用的需求上各有差异,因此需要深入了解企业当前和未来的业务需求,确定数据中台需要支持的业务场景。技术架构与可扩展性:当下,数据量增长和技术更新迅速,数...
点击进入详情页
本回答由龙石数据提供
展开全部
#include <stdlib.h>
typedef int MYTYPE;
void Merge(MYTYPE x[], MYTYPE tmp[], int lpos, int rpos, int rightend){
int leftend= rpos - 1,
numelements = rightend - lpos + 1,
tmppos= lpos,i;
while ((lpos <= leftend) && (rpos <= rightend))
tmp[tmppos++] = x[lpos] <= x[rpos] ? x[lpos++] : x[rpos++];
while (lpos <= leftend) tmp[tmppos++] = x[lpos++];
while (rpos <= rightend)tmp[tmppos++] = x[rpos++];
for (i = 0; i < numelements; ++i, --rightend) x[rightend] = tmp[rightend];
}
void MSort(MYTYPE x[], MYTYPE tmp[], int left, int right){
if (left >= right) return;
int center = (left + right) / 2;
MSort(x, tmp, left, center);
MSort(x, tmp, center + 1, right);
Merge(x, tmp, left, center + 1, right);
}
void MergeSort(MYTYPE x[], int n){
MYTYPE *tmp = (MYTYPE*)malloc(n*sizeof(MYTYPE));
MSort(x, tmp, 0, n - 1);
free(tmp);
}
void main() {
int ar[10],i;
for(i=0;i<10;++i){
printf("输入第%d个数:",i+1);
scanf("%d",&ar[i]);
}
for(i=0;i<10;++i) printf("%d,",ar[i]);
MergeSort(ar,10);
printf("\n排序后:\n");
for(i=0;i<10;++i) printf("%d,",ar[i]);
printf("\n");
}算法转自<数据结构与算法分析学习笔记>,代码也可以编译,我测试了下
你看下有没帮助吧
为什么 孤傲※王子 这种贴海报刷分的人有存在这个世界的必要呢?我真是不理解上帝的用意,是来告知人世的悲哀,还是想为一个常人作点衬托呢?
typedef int MYTYPE;
void Merge(MYTYPE x[], MYTYPE tmp[], int lpos, int rpos, int rightend){
int leftend= rpos - 1,
numelements = rightend - lpos + 1,
tmppos= lpos,i;
while ((lpos <= leftend) && (rpos <= rightend))
tmp[tmppos++] = x[lpos] <= x[rpos] ? x[lpos++] : x[rpos++];
while (lpos <= leftend) tmp[tmppos++] = x[lpos++];
while (rpos <= rightend)tmp[tmppos++] = x[rpos++];
for (i = 0; i < numelements; ++i, --rightend) x[rightend] = tmp[rightend];
}
void MSort(MYTYPE x[], MYTYPE tmp[], int left, int right){
if (left >= right) return;
int center = (left + right) / 2;
MSort(x, tmp, left, center);
MSort(x, tmp, center + 1, right);
Merge(x, tmp, left, center + 1, right);
}
void MergeSort(MYTYPE x[], int n){
MYTYPE *tmp = (MYTYPE*)malloc(n*sizeof(MYTYPE));
MSort(x, tmp, 0, n - 1);
free(tmp);
}
void main() {
int ar[10],i;
for(i=0;i<10;++i){
printf("输入第%d个数:",i+1);
scanf("%d",&ar[i]);
}
for(i=0;i<10;++i) printf("%d,",ar[i]);
MergeSort(ar,10);
printf("\n排序后:\n");
for(i=0;i<10;++i) printf("%d,",ar[i]);
printf("\n");
}算法转自<数据结构与算法分析学习笔记>,代码也可以编译,我测试了下
你看下有没帮助吧
为什么 孤傲※王子 这种贴海报刷分的人有存在这个世界的必要呢?我真是不理解上帝的用意,是来告知人世的悲哀,还是想为一个常人作点衬托呢?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |