資料結構之有序鍊錶的歸併

2021-07-02 17:50:40 字數 1203 閱讀 2032

涉及到鍊錶的建立、刪除、輸入、輸出

鍊錶的歸併

#includeusing namespace std;

#define error 0

#define ok 1

typedef int elemtype;

typedef int status;

typedef struct lnodelnode,*linklist;

void initlist(linklist &l)

void inputlist(linklist &l,int n)

}status deletelist(linklist &l,int i,elemtype &e)

if(!(p->next||j>i-1))

return error;

q=p->next;

p->next=q->next;

e=q->data;

return ok;

}void mergelist(linklist &la,linklist &lb,linklist &lc)

else

} pc->next=pa?pa:pb;

// free(lb);

}void outputlist(linklist lc)

}int main(){

linklist la;

linklist lb;

linklist lc;

int num_a,num_b,num_c;

int number;

initlist(la);

initlist(lb);

initlist(lc);

cout<<"請輸入鍊錶la的個數:"<>num_a;

inputlist(la,num_a);

cout<<"請輸入鍊錶lb的個數:"<>num_b;

inputlist(lb,num_b);

int flag=0,temp;

cout<<"如果你想刪除la中的資料,請輸入1,"<>flag;

if(flag==1){

cout<<"請輸入要刪除的資料所在的位置:"<>number;

deletelist(la,number,temp);

cout<<"刪除的數字是"<>number;

deletelist(lb,number,temp);

cout<<"刪除的數字是"<

資料結構實驗之鍊表四 有序鍊錶的歸併

1.知識點 有序鍊錶歸併 2.題意 分別輸入兩個有序的整數序列 分別包含m和n個資料 建立兩個有序的單鏈表,將這兩個有序單鏈表合併成為乙個大的有序單鏈表,並依次輸出合併後的單鏈表資料 3.注意事項 注意若兩個鍊錶有乙個為空鍊錶的情況 注意合併時乙個鍊錶節點已經無節點和乙個鍊錶仍含有節點的情況 inc...

資料結構實驗之鍊表四 有序鍊錶的歸併

struct node h1,p1,t1 完整鍊錶的三要素頭指標,移動指標,尾指標 struct node h2,p2,t2 int main while n struct node h,t,p 這裡p可要也可不要,p可用t來代替 h h1 p1 h1 next p2 h2 next free h2...

redis資料結構之有序集合

有序集合與集合大致差不多,不同的是有序集合中的元素可以排序,但與列表使用下標實現排序不一樣,有序集合利用分數作為依據排序。有序集合不能重複,但分數可以重複。對部落格 發布的文章做排行榜,榜單的維度可能是按時間 按照獲得讚數。比如使用讚數對使用者每天發布文章的排行榜,並實現以下功能 1 新增使用者讚數...