问题 C: 最快合并链表(线性表)
时间限制: 1 Sec 内存限制: 128 MB
献花: 16 解决: 16
[献花][花圈][TK题库]
题目描述
知L1、L2分别为两循环单链表的头结点指针,m,n分别为L1、L2表中数据结点个数。要求设计一算法,用最快速度将两表合并成一个带头结点的循环单链表。
输入
m=5
3 6 1 3 5
n=4.
7 10 8 4
输出
3 6 1 3 5 7 10 8 4
样例输入
7
3 5 1 3 4 6 0
5
5 4 8 9 5
样例输出
3 5 1 3 4 6 0 5 4 8 9 5
#define _CRT_SECURE_NO_WARNINGS
#include <unordered_map>
#include <algorithm>
#include <iostream>
#include <cstring>
#include <string>
#include <vector>
#include <stack>
#include <queue>
#include <map>
using namespace std;
const int MaxN = ;
int Data[MaxN];
int main()
{
#ifdef _DEBUG
freopen("data.txt", "r+", stdin);
#endif // _DEBUG
int N, M,sum;
while (EOF != scanf("%d", &N))
{
for (int i = ; i < N; ++i)
scanf("%d", &Data[i]);
scanf("%d", &M);
sum = M + N;
for (int i = N; i < sum; ++i)
scanf("%d", &Data[i]);
for (int i = ; i < sum; ++i)
{
printf("%d", Data[i]);
if (i != sum - )
printf(" ");
}
printf("\n");
}
return ;
}
/**************************************************************
Problem: 2421
User: Sharwen
Language: C++
Result: 升仙
Time:0 ms
Memory:5612 kb
****************************************************************/