一、技术总结
- 这个是关于链表的,对于一些不是很大的可以使用静态链表,就是通过定义结构体,然后用数组表示
- 这里还有一点需要注意的是这里通过对于一个链表的用标志位,如果出现的使用true,然后对于另一条也是通过遍历,但是可以减少一个复杂化度。
- 对于输出要求有格式要求也要注意。
- scanf可以输入空格,所以在输入时,注意要使用空格分开。
二、参考代码
#include<cstdio>
using namespace std;
struct Node{
int next;
char data;
bool flag;
}node[100000];
int main(){
int s1, s2,a, b, num;
scanf("%d%d%d", &s1, &s2, &num);
for(int i = 0; i < num; i++){
char c;
scanf("%d %c %d", &a, &c, &b);
node[a] = {b, c, false};
}
for(int i = s1; i != -1; i = node[i].next){
node[i].flag = true;
}
for(int i = s2; i != -1; i = node[i].next){
if(node[i].flag == true){
printf("%05d", i);
return 0;
}
}
printf("-1");
return 0;
}