#include<iostream>
#include<cstdio>
//#include<algorithm>
using namespace std;
const int N=10;
//head表示头结点的下标
//e[i]表示节点i的值
//ne[i]表示节点i的next指针
//idx表示用到了哪个地址,就是下标
int head= -1,e[N],ne[N],idx;
void add_to_head(int x)
{
e[idx]=x;
ne[idx]=head;
head=idx++;
}
int main()
{
int val;
while(scanf("%d",&val) != EOF) //~scanf表示没有输入值的时候,结束while循环
{
add_to_head(val);
}
for(int i=head;i!=-1;i=ne[i])
cout<<e[i]<<" ";
cout<<endl;
return 0;
}
3条回答 默认 最新
- qzjhjxj 2021-07-23 06:59关注
供参考:
#include<iostream> #include<cstdio> //#include<algorithm> using namespace std; const int N = 10; //head表示头结点的下标 //e[i]表示节点i的值 //ne[i]表示节点i的next指针 //idx表示用到了哪个地址,就是下标 int head = -1, e[N], ne[N], idx = 0; void add_to_head(int x) { e[idx] = x; ne[idx] = head; head = idx++; } int main() { int val; while (cin>>val) //ctrl + z { add_to_head(val); } for (int i = head; i != -1; i = ne[i]) cout << e[i] << " "; cout << endl; return 0; } //1 2 3 4 5 ^ Z //e[0] = 1, head = 0, ne[0] = -1 //e[1] = 2, head = 1, ne[1] = 0 //e[2] = 3, head = 2, ne[2] = 1 //e[3] = 4, head = 3, ne[3] = 2 //e[4] = 5, head = 4, ne[4] = 3 //5 4 3 2 1 //请按任意键继续. . .
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报展开全部7条评论
悬赏问题
- ¥15 vue请求不到数据,返回状态200,数据为html
- ¥15 访问url时不会自动调用其 Servlet的doGet()
- ¥15 用白鹭引擎开发棋牌游戏的前端为什么这么难找
- ¥15 MATLAB解决问题
- ¥35 哪位专业人士知道这是什么原件吗?哪里可以买到?
- ¥15 关于#c##的问题:treenode反序列化后获取不到上一节点和下一节点,Fullpath和Handle报错
- ¥15 一部手机能否同时用不同的app进入不同的直播间?
- ¥20 输入import torch显示Intel MKL FATAL ERROR,系统驱动1%,: Cannot load mkl_intel_thread.dll.
- ¥15 点云密度大则包围盒小
- ¥15 nginx使用nfs进行服务器的数据共享