天天看点

2421 Problem C 最快合并链表(线性表)

问题 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
****************************************************************/