c語言單鏈表操作,程式設計關鍵是獲取別人的思想

2021-06-14 23:24:36 字數 1644 閱讀 3309

#include

#include

#include

typedef char elemtype;

typedef int integer;

#define maxsize 10

#define n sizeof(struct node)

typedef struct node

linklist;

//這個是函式是比較字元大小相當於strcmp()

int mystrcmp(char *p,char *q)

} return *(p+i)-*(q+i)>0?1:-1;

} void quicksort(integer object,integer s,integer t) //快速排序的思想

q=l->next;

while(q!=null)

return l;

} linklist * createlistr(linklist *l,integer data,integer n)//表示在頭結點插入資料

q=l->next; while(q!=null) return 0; } int getelem(linklist *l,int i,elemtype &e) if(q==null) //如果找到當前為空 else } int locateelem(linklist *l,elemtype e) if(q==null) //次鍊錶中不含此數字 return 0; return i;//此時i的值就是查詢元素的位置 } linklist *listinsert(linklist *l,int i,elemtype e) if(q==null) //如果為空 說明插入的位置不存在 else temp->data=e; temp->next=q->next; q->next=temp; } return l; } int linklength(linklist *l) //還回煉表中的長度 return length; } void print(linklist *l) } int listdel(linklist *l,int i,elemtype &e) //刪除鍊錶中的值 if(q==null) else return 1; } void listsort(linklist * l) //對鍊錶進行由小到大的排序 p->next=q->next; q->next=p; p=r;//掃瞄單鏈表剩餘的結點 } } } int main() ,i=0; elemtype e,locate; linklist *l; l=(linklist *)malloc(sizeof(linklist)); l->next=null; l=createlistf(l,a,10); //頭插入發鍊錶 putchar(10); getelem(l,2,e); printf("從鍊錶中位於結點第2個值是:%d\n",e); locate=locateelem(l,6); printf("查詢元素< 6 >的位置:%d\n",locate); l=listinsert(l,3,10); print(l); printf("這個鍊錶中的長度:%d\n",linklength(l)); listdel(l,5,e); printf("刪除第5個元素的值是:%d\n",e); printf("對鍊錶進行按公升序,排序後的結果:\n"); listsort(l); print(l); system("pause"); return 0; }

C語言單鏈表常見操作

include include 定義單鏈表結構體 typedef int elemtype typedef struct node lnode,linklist 建立單鏈表 void build linklist l 求單鏈表的長度 void linklength linklist l printf...

C語言 單鏈表各種基本操作

includetypedef struct student node 鍊錶建立 node create else break p next null head head next return head 鍊錶列印 void print node head printf n n 鍊錶測長 int ge...

C語言單鏈表常見操作系列

include include 定義單鏈表結構體 typedef int elemtype typedef struct node lnode,linklist 建立單鏈表 void build linklist l 求單鏈表的長度 void linklength linklist l printf...