順序表應用5 有序順序表歸併

2021-09-11 04:14:43 字數 1051 閱讀 4781

problem description

已知順序表a與b是兩個有序的順序表,其中存放的資料元素皆為普通整型,將a與b表歸併為c表,要求c表包含了a、b表裡所有元素,並且c表仍然保持有序。

input

輸入分為三行:

第一行輸入m、n(1<=m,n<=10000)的值,即為表a、b的元素個數;

第二行輸入m個有序的整數,即為表a的每乙個元素;

第三行輸入n個有序的整數,即為表b的每乙個元素;

output

輸出為一行,即將表a、b合併為表c後,依次輸出表c所存放的元素。

sample input

5 31 3 5 6 9

2 4 10

sample output

1 2 3 4 5 6 9 10

題解:題目已知有兩個有序的順序表,把這兩個順序表歸併為乙個大的有序的順序表,可以設定i和j分別指向兩個順序表,然後從頭開始,將i所指的元素與j所指的元素進行大小比較,較小的放入到新的歸併的順序表中去,到了最後,一般是有乙個順序表的元素全都歸併到新錶中去了,而另乙個順序表中還有元素,此時,只需要將這個順序表剩下的元素全部加入到新錶中即可。

#include #include#includetypedef int elemtype;

using namespace std;

#define list 11000

#define overflow -1

#define ok 1

typedef struct

sqlist;

int initlist(sqlist &l)

void charu(sqlist &l,int n)

l.length=n;

}void print(sqlist &l)

void guibing(sqlist &l1,sqlist &l2,sqlist &l3)

else

}if(i}

else if(j}

l3.length=k;

}int main()

順序表應用5 有序順序表歸併

已知順序表a與b是兩個有序的順序表,其中存放的資料元素皆為普通整型,將a與b表歸併為c表,要求c表包含了a b表裡所有元素,並且c表仍然保持有序。輸入分為三行 第一行輸入m n 1 m,n 10000 的值,即為表a b的元素個數 第二行輸入m個有序的整數,即為表a的每乙個元素 第三行輸入n個有序的...

順序表應用5 有序順序表歸併

time limit 100ms memory limit 800k 有疑問?點這裡 已知順序表a與b是兩個有序的順序表,其中存放的資料元素皆為普通整型,將a與b表歸併為c表,要求c表包含了a b表裡所有元素,並且c表仍然保持有序。輸入分為三行 第一行輸入m n 1 m,n 10000 的值,即為表...

順序表應用5 有序順序表歸併

time limit 100ms memory limit 800k 已知順序表a與b是兩個有序的順序表,其中存放的資料元素皆為普通整型,將a與b表歸併為c表,要求c表包含了a b表裡所有元素,並且c表仍然保持有序。輸入分為三行 第一行輸入m n 1 m,n 10000 的值,即為表a b的元素個數...