【C语言】模拟链表
发布日期:2021-05-15 01:05:02 浏览次数:18 分类:精选文章

本文共 1702 字,大约阅读时间需要 5 分钟。

������������������������������������������������������������������������������������������������������������data���������right���������������������������������������������������������������������������������data���������������������������������������right���������������������������������������������������������������

���������������������������������������������������������������������������������right[2] = 3���������������������������������2������������������������������������3������������������������right[9] = 0���������������������������������9���������������������������������

������������������������������������������������������������������������������������������������������������������������������������right������������������������������������������������������������������������6������������������6������������������������������������������right������������������������������������������������������

���������������������

���������������

#include 
#include
int main(void)
{
int i, n, t, len;
scanf("%d", &n);
int* data = (int*)malloc(sizeof(int) * (n + 2));
int* right = (int*)malloc(sizeof(int) * (n + 2));
for (i = 1; i <=n; ++i)
scanf("%d", data +i);
len = n;
//���������right������
for(i=1; i<=n; ++i)
{
if(i !=n)
right[i] = i+1;
else
right[i] =0;
}
len++;
scanf("%d", data+len);
//������������
t=1;
while(t)
{
if(data[right[t]] > data[len])
{
right[len] = right[t];
right[t] = len;
break;
}
t = right[t];
}
t=1;
while(t !=0)
{
printf("%4d", data[t]);
t = right[t];
}
return 0;
}

���������������������������������������������������������������������������������������������������������������������������

上一篇:5月6号考核
下一篇:[C语言]递归

发表评论

最新留言

不错!
[***.144.177.141]2025年04月22日 13时01分15秒