/ * 2は、新たなソートされたリストとリターンにリストを命じました。新しいリストは、二つのリストで構成与えられたモザイク内のすべてのノードです。 * / の#include <stdio.hに> する#include <malloc.hを> する#include < 文字列の.h> の#include <stdlib.h>に含ま する#include <math.h>の 書式#include < 文字列の.h> の#include <iostreamの> のtypedef 構造体{ノード INT データ、 構造体ノード* 次に; } LINKLIST、 ボイドプリント(LINKLIST * L){ LINKLIST * = L-P> 次に、 一方(P){ のprintf("%のD "P-> データ); P = P-> 次; } のprintf(" \ n " ); } ボイド *&L(LINKLISTを作成し、INT STR []、INT N){ LINKLIST * R * S。 L =(LINKLIST *)はmalloc(はsizeof (LINKLIST)); R = L; INT iが、 のために(私は= 0、I <N; I ++ ){ S =(LINKLIST *)はmalloc(はsizeof (LINKLIST)); S - >データ= STR [I]。 R - >次= S。 R = Sであり; } R - >次= NULL; } ボイド UN(LINKLIST *&L、LINKLIST * LA、LINKLIST * LB){ L =(LINKLIST *)はmalloc(はsizeof (LINKLIST))。 LINKLIST * PA = LA->次に、* PB = LB->次に、R * = L * S。 一方、(PA && PB){ 場合(PA->データ<PB-> データ){ S =(LINKLIST *)はmalloc(はsizeof (LINKLIST))。 S - >データ= PA-> データ; R - >次= S。 R= Sであり;S; PA = PA-> 次。 } 他{ S =(LINKLIST *)はmalloc(はsizeof (LINKLIST))。 S - >データ= PB-> データ; R - >次= S。 R = Sであり; PB = PB-> 次。 } } 一方(PA){ S =(LINKLIST *)はmalloc(はsizeof (LINKLIST))。 S - >データ= PA-> データ; R - >次= S。 R = PA = PA-> 次。 } 一方(PB){ S =(LINKLIST *)はmalloc(はsizeof (LINKLIST))。 S - >データ= PB-> データ; R - >次= S。 R = Sであり; PB = PB-> 次。 } R - >次= NULL; } int型のmain() { LINKLIST * L、* LA、* LB。 int型I、レナ、LENB。 scanf関数(" %のD "、&レナ)。 int型沼[レナ]。 にとって(私は= 0 ; I <レナ; I ++ ){ scanf関数(" %のD "、およびNUMA [I])。 } (LA、NUMA、レナ)を作成します。 scanf関数(" %のD "、&LENB)。 int型の麻痺[LENB]。 以下のために(私は= 0 ; I <LENB; I ++ ){ scanf関数(" %のD "、およびしびれ[I])。 } (LB、麻痺、LENB)を作成します。 国連(L、LA、LB)。 プリント(L)。 リターン 0 ; }