線性表的鏈式實現(xiàn)

include <stdio.h>

include <stdlib.h>

define ERROR -1

define OK 1

typedef struct LNode{
int data;
struct LNode *next;
}LNode;

void Output(LNode *head){
while(head->next != NULL){
head = head->next;
printf("%d ", head->data);
}
printf("\n");
}
LNode createLink(LNode *head, int n){
LNode *p, *q;
int i;
head = p = (LNode *)malloc(sizeof(LNode));;
p->next = NULL;
printf("按照升序輸入%d個數(shù)字:\n", n);
for(i = 0; i < n; i++){
q = (LNode *)malloc(sizeof(LNode));
scanf("%d", &q->data);
q->next = p->next;
p->next = q;
p = q;
}
Output(head);
return *head;
}
void FindLink(LNode *L, int num){
LNode *p;
p = L;
int i = 0;
while(p->data != num && p->next != NULL){
p = p->next;
i++;
}
if(p->data == num){
printf("find:%d,pos:%d\n", p->data, i);
}
else{
printf("nofind:%d\n", num);
}

}
int insertLink(LNode *L, int i, int num){
LNode *p, *q;
p = L;
int j = 0;
while(p && j < i-1){
p = p->next;
j++;
}
if(!p || j > i-1){
return ERROR;
}
q = (LNode *)malloc(sizeof(LNode));
q->data = num;
q->next = p->next;
p->next = q;
Output(L);
return OK;
}

int DeleLink(LNode *L, int i){
LNode *p, *q;
int j = 0;
p = L;
while(p->next && j < i-1){
p = p->next;
j++;
}
if(!(p->next) || j > i-1){
return ERROR;
}
q = p->next;
p->next = q->next;
free(q);
Output(L);
return OK;
}

void MergeList(LNode *La, LNode *Lb, LNode *Lc){
LNode *pa, *pb, *pc;
pa = La->next;
pb = Lb->next;
Lc = pc = La;
while(pa && pb){
if(pa->data <= pb->data){
pc->next = pa;
pc = pa;
pa = pa->next;
}
else{
pc->next = pb;
pc = pb;
pb = pb->next;
}
}
pc->next = pa?pa:pb;
free(Lb);
Output(Lc);
}

int main()
{
LNode la, lb, lc;
int i, num;
la = createLink(&la, 5);

printf("請輸入要查找的數(shù)字:");
scanf("%d", &num);
FindLink(&la, num);

printf("請輸入要插入的位置:");
scanf("%d", &i);
printf("請輸入要插入的數(shù)字:");
scanf("%d", &num);
insertLink(&la, i, num);

printf("請輸入要刪除的位置:");
scanf("%d", &i);
DeleLink(&la, i);

lb = createLink(&lb, 6);
printf("合并后:");
MergeList(&la, &lb, &lc);
return 0;

}

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末筹淫,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子弯淘,更是在濱河造成了極大的恐慌盒卸,老刑警劉巖券册,帶你破解...
    沈念sama閱讀 211,817評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡歹河,警方通過查閱死者的電腦和手機勤众,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,329評論 3 385
  • 文/潘曉璐 我一進店門舆绎,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人们颜,你說我怎么就攤上這事吕朵×源迹” “怎么了?”我有些...
    開封第一講書人閱讀 157,354評論 0 348
  • 文/不壞的土叔 我叫張陵努溃,是天一觀的道長硫嘶。 經(jīng)常有香客問我,道長梧税,這世上最難降的妖魔是什么沦疾? 我笑而不...
    開封第一講書人閱讀 56,498評論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮第队,結(jié)果婚禮上哮塞,老公的妹妹穿的比我還像新娘。我一直安慰自己凳谦,他們只是感情好忆畅,可當我...
    茶點故事閱讀 65,600評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著尸执,像睡著了一般家凯。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上剔交,一...
    開封第一講書人閱讀 49,829評論 1 290
  • 那天肆饶,我揣著相機與錄音,去河邊找鬼岖常。 笑死驯镊,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的竭鞍。 我是一名探鬼主播板惑,決...
    沈念sama閱讀 38,979評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼偎快!你這毒婦竟也來了冯乘?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,722評論 0 266
  • 序言:老撾萬榮一對情侶失蹤晒夹,失蹤者是張志新(化名)和其女友劉穎裆馒,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體丐怯,經(jīng)...
    沈念sama閱讀 44,189評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡喷好,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,519評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了读跷。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片梗搅。...
    茶點故事閱讀 38,654評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出无切,到底是詐尸還是另有隱情荡短,我是刑警寧澤,帶...
    沈念sama閱讀 34,329評論 4 330
  • 正文 年R本政府宣布哆键,位于F島的核電站掘托,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏洼哎。R本人自食惡果不足惜烫映,卻給世界環(huán)境...
    茶點故事閱讀 39,940評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望噩峦。 院中可真熱鬧锭沟,春花似錦、人聲如沸识补。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,762評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽凭涂。三九已至祝辣,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間切油,已是汗流浹背蝙斜。 一陣腳步聲響...
    開封第一講書人閱讀 31,993評論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留澎胡,地道東北人孕荠。 一個月前我還...
    沈念sama閱讀 46,382評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像攻谁,于是被迫代替她去往敵國和親稚伍。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,543評論 2 349

推薦閱讀更多精彩內(nèi)容