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...