西南科技大学OJ系统 #941: 有序顺序表的合并操作的实现
生活随笔
收集整理的這篇文章主要介紹了
西南科技大学OJ系统 #941: 有序顺序表的合并操作的实现
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
已知兩非遞減的順序線性表,要求合并成一個(gè)新的非遞減順序線性表。(測試數(shù)據(jù)為整型)
輸入
輸入包含四行,第一行為自然數(shù)n,表示第一個(gè)非遞減順序線性表的長度; 第二行為n個(gè)自然數(shù)構(gòu)成的非遞減順序線性表; 第三行為自然數(shù)m,表示第二個(gè)非遞減順序線性表的長度; 第四行為m個(gè)自然數(shù)構(gòu)成的非遞減順序線性表。輸出
輸出:用一行輸出合并后的非遞減順序線性表,各數(shù)之間用一個(gè)空格隔開。樣例輸入
2 1 3 3 2 3 6樣例輸出
1 2 3 3 6 #include<stdio.h> #include<malloc.h>typedef struct {int *array;int length; }sqList;sqList GetData() {sqList L;int list_length;scanf("%d",&list_length);L.array = (int *)malloc(sizeof(int)*list_length);for(int i=0; i<list_length; i++){scanf("%d",& L.array[i]);}L.length = list_length;return L; }void Display(sqList L) {for(int i=0; i<L.length-1; i++){printf("%d ",L.array[i]);}printf("%d\n",L.array[L.length-1]); }sqList Union(sqList Ln,sqList Lm) {sqList L;int k=0;int add_length=Ln.length+Lm.length;L.array = (int *)malloc(sizeof(int)*add_length);for(int i=0;i<Ln.length;i++){L.array[k++]=Ln.array[i];}for(int j=0;j<Lm.length;j++){L.array[k++]=Lm.array[j];}L.length = add_length;return L; }sqList BubbleSort(sqList L) {int i, j, temp;for (i=0; i<L.length-1; i++)for (j=0; j<L.length-1-i; j++){if (L.array[j] > L.array[j+1]){temp = L.array[j];L.array[j] = L.array[j+1];L.array[j+1] = temp;}}return L; }int main() {sqList Ln,Lm,finL;Ln = GetData();Lm = GetData();finL = Union(Ln,Lm);finL = BubbleSort(finL);Display(finL);return 0; }總結(jié)
以上是生活随笔為你收集整理的西南科技大学OJ系统 #941: 有序顺序表的合并操作的实现的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python把list转成字典_pyth
- 下一篇: bigdecimal 小于等于0_半场0