兩個線性表合併為一演算法實現

2021-10-24 14:40:20 字數 785 閱讀 6649

la和lb是兩個int型陣列,將他們合併為乙個陣列lc

(課本p20演算法2.1)

#include#define len_la 4

#define len_lb 7

//函式-獲取元素

int getelem(int *list,int index)

//函式-插入元素

void listinsert(int *list,int index,int value)

void main()

; int lb[len_lb]=;

//int *lc,i,j,k;

int *lc;

int i=1;

int j=1;

int k=0;

//計算合併所需長度

int len_lc=len_la+len_lb;

//臨時訪問la或者lb中的元素

int ai,bi;

//申請記憶體

lc=(int *)malloc(len_lc*sizeof(int));

//當la和lb兩個都沒到結尾時,只要有乙個到頭了就結束迴圈

while((i<=len_la)&&(j<=len_lb))

else//bi插入bi

}//la沒到頭就把la剩下資料寫入lc中

while(i<=len_la)

//lb沒到頭就把lb剩下資料寫入lc中

while(j<=len_lb)

//迴圈檢視合併效果

for(i=1;i}

兩個鍊錶合併為乙個鍊錶

include include typedef struct node node typedef struct node linklist using namespace std void creat linklist l,int n cout the linklist is full next n...

兩個線性表融合的演算法

問題描述 線性表a a1,a2,am 和b b1,b2,bm 按以下規則融合 c a1,b1,am,bm,bm,bm 1.bn 當m n時 c a1,b1,an,bn,an,bn 1.am 當m n時 單鏈表的長度m,n均未顯示儲存,c表利用a表和b表中的結點空間構成。自己分析在另個地方寫了,未儲存...

兩個有序鍊錶合併為有序

include 兩個有序遞增的單鏈表 有頭結點 合併為新單鏈表。include 用尾插法表示這兩個鍊錶較好,因為這樣建立鍊錶是有序的,遞增的。如果用頭插法,for迴圈改為for i n i 0,i 使其新建的鍊錶遞增 typedef struct lnode lnode lnode creat ln...