單鏈表的操作
① 輸入一組整型元素序列,使用尾插法建立乙個帶有頭結點的單鏈表。
② 實現該線性表的遍歷。
③ 在該單鏈表的第i個元素前插入乙個整數。
④ 刪除該單鏈表中的第i個元素,其值通過引數將其返回。
⑤ 建立兩個按值遞增有序的單鏈表 ,將他們合併成乙個按值遞減有序的單鏈表。要求利用原來的儲存空間
這是我資料結構老師留下的實驗作業,提交之前先發個部落格哈!
#include #include typedef struct lnodelnode,*linklist;
void initlist(linklist &l)
void createlist(linklist &l,int n) }
void output(linklist l)
printf("\n");
}int listinsert(linklist &l,int i,int e)
else
break;
} if(!p || cnt > i-1)
return 0;
else
return 1;
} int listdelete(linklist l,int i,int &e)
else
}q=p->next;
e=p->next->data;
p->next=p->next->next;
free(q); }
void mergelist(linklist la,linklist &lb,linklist &lc)
else if(pa->data == pb->data) //考慮值相等的情況
else
}while(pa)
while(pb)
q_tmp=lb;
free(q_tmp);
}int main()
else
*/ /*printf("請輸入你要刪除的元素的位置\n");
scanf("%d",&i);
listdelete(l,i,e);
output(l);
printf("e = %d\n",e);*/
initlist(lb);
printf("請輸入lb中你要輸入的資料的個數\n");
scanf("%d",&n);
createlist(lb,n);
printf("資料的分別是\n");
output(lb);
mergelist(l,lb,lc);
output(lc);
return 0;
}
資料結構 單鏈表的操作
1 隨機產生或鍵盤輸入一組元素,建立乙個帶頭結點的單向鍊錶 無序 2 遍歷單向鍊錶。3 把單向鍊錶中元素逆置 不允許申請新的結點空間 4 在單向鍊錶中刪除所有的偶數元素結點。5 編寫在非遞減有序鍊錶中插入乙個元素使鍊錶元素仍有序的函式,並利用該函式建立乙個非遞減有序單向鍊錶。6 利用演算法5建立兩個...
C資料結構 單鏈表操作
單鏈表的一些操作函式 參考自 程杰 大話資料結構 巨集定義 define ok 1 define error 0 typedef int elemtype typedef int status 結構體 線性單鏈表儲存結構 typedef struct node node typedef struct...
資料結構之單鏈表操作
編寫乙個程式,實現單鏈表的各種基本運算 假設單鏈表的元素型別為char 1 初始化單鏈表h 2 採用尾插法依次插入元素a,b,c,d,e 3 輸出單鏈表h 4 輸出單鏈表h長度 5 判斷單鏈表h是否為空 6 輸出單鏈表h的第3個元素 7 輸出元素a的位置 8 在第4個元素位置上插入元素f 9 輸出單...