c语言线性表库函数大全,数据结构(C语言版)-线性表习题详解
《數據結構(C語言版)-線性表習題詳解》由會員分享,可在線閱讀,更多相關《數據結構(C語言版)-線性表習題詳解(23頁珍藏版)》請在人人文庫網上搜索。
1、數 據 結 構 ,線性表習題課,1)在非空的線性表,有且僅有一個開始結點a1,它沒 有直接前趨,而僅有一個直接后繼a2 2)有且僅有一個終端結點an,它沒有直接后繼,而僅 有一個直接前趨an-1; 3)其余的內部結點ai(2in-1)都有且僅有一個直接 前趨ai-1和一個直接后繼ai+1,1、線性表的邏輯特征,一、要點回顧,2、線性表的順序表示和實現,define LIST_INIT_SIZE 100 #define LISTINCREMENT 10 typedef struct ElemType *elem; int length; int listsize; Sqlist,1)存儲結構的定。
2、義,2)操作的實現,Status ListInsert_Sq(SqList / ListInsert_Sq,Status ListDelete_sq(Sqlist / ListDelete_sq,Status LocateElem_sq(SqList L,ElemType e) /在順序表中查找第一個值為e的元素的位序 i=1; p=L.elem; while(i=L.length /LocateElem_sq,3、線性表的單鏈表存儲結構,typedef struct LNode Elemtype data; struct LNode *next; Lnode, *LinkList,1)存儲結。
3、構的定義,2)操作的實現,Status GetElem_L(LinkList L,int i,ElemType / GetElem_L,Status ListInsert_L(LinkList / ListInsert_L,Status ListDelete_L (LinkList / ListDelete_L,void CreateList_L(LinkList / CreatList_L,Status Insert_SqList(SqList /Insert_SqList,2.11 設順序表va中的數據元素遞增有序。試編寫一算法,將x插入到順序表的適當位置上,以保持該表的有序性,二、作業點。
4、評,2.14 試寫一算法在帶頭結點的單鏈表結構上實現線性表操作 LENGTH(L,int Length(LinkList L)/求鏈表的長度 p=L-next; k=0; while(p) p=p-next; k+; return k;,2.19已知線性表中的元素以值遞增有序排列,并以單鏈表作存儲結構。試寫一高效的算法,刪除表中所有值大于mink且小于maxk的元素(若表中存在這樣的元素)同時釋放被刪結點空間,并分析算法時間復雜度(mink和maxk是給定參變量,Status Delete_Between(Linklist / Delete_Between,三、習題講解,例1、已知線性表中元素。
5、無序,且采用帶頭結點的單鏈表存儲結構,要求刪除所有大于min且小于max的結點,Status Delete_Between(Linklist / Delete_Between,例2、有一單鏈表(不帶頭結點)頭指針為head,試設計一算法使得單鏈表插入x后仍遞增有序,Status Insert(Linklist /Insert,Status Insert(Linklist /Insert,例3、試分別以不同的存儲結構實現線性表的就地逆轉算法,即在原表的存儲空間內將線性表 (a1,a2,.,an)逆置為(an,an-1,.,a1,1)順序存儲結構 /結構類型定義: #define LIST_INI。
6、T_SIZE 100 #define LISTINCREMENT 10 typedef struct ElemType *elem; int length; int listsize; Sqlist,算法 void reverse(SqList /reverse,2)鏈式存儲結構單鏈表,結構類型定義,typedef struct LNode Elemtype data; struct LNode *next; Lnode, *LinkList,voidconvert(linklisthead) /帶頭結點的單鏈表head就地逆置LNode*p,*q;p=head-next;/指向開始結點head-next=NULL;/逆置后初表為空while(p)/p為NULL,表示已經全部逆置q=p-next;/p指向下一個需要逆置的結點 p-next=head-next;/將需要逆置結點插入頭結點后面 head-next=p; p=q; return OK;/convert,算法,例4、試在帶頭結點的單鏈表中值為x的結點之后插入m個結點,類型定義: typedef struct LNode Elemtype data; struct LNode *next; Lnode, *LinkList,算法實現 Status Insert (Linklist /Insert。
總結
以上是生活随笔為你收集整理的c语言线性表库函数大全,数据结构(C语言版)-线性表习题详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 奇偶个数
- 下一篇: Java多线程同步Synchronize