資源簡介
大話數據結構.rar
代碼片段和文件信息
#include?“stdio.h“????
#include?“stdlib.h“???
#include?“io.h“??
#include?“math.h“??
#include?“time.h“
#define?OK?1
#define?ERROR?0
#define?TRUE?1
#define?FALSE?0
#define?MAXSIZE?20?/*?存儲空間初始分配量?*/
typedef?int?Status;??????????/*?Status是函數的類型其值是函數結果狀態(tài)代碼,如OK等?*/
typedef?int?ElemType;????????/*?ElemType類型根據實際情況而定,這里假設為int?*/
Status?visit(ElemType?c)
{
????printf(“%d?“c);
????return?OK;
}
typedef?struct
{
ElemType?data[MAXSIZE];????????/*?數組,存儲數據元素?*/
int?length;????????????????????????????????/*?線性表當前長度?*/
}SqList;
/*?初始化順序線性表?*/
Status?InitList(SqList?*L)?
{?
????L->length=0;
????return?OK;
}
/*?初始條件:順序線性表L已存在。操作結果:若L為空表,則返回TRUE,否則返回FALSE?*/
Status?ListEmpty(SqList?L)
{?
if(L.length==0)
return?TRUE;
else
return?FALSE;
}
/*?初始條件:順序線性表L已存在。操作結果:將L重置為空表?*/
Status?ClearList(SqList?*L)
{?
????L->length=0;
????return?OK;
}
/*?初始條件:順序線性表L已存在。操作結果:返回L中數據元素個數?*/
int?ListLength(SqList?L)
{
return?L.length;
}
/*?初始條件:順序線性表L已存在,1≤i≤ListLength(L)?*/
/*?操作結果:用e返回L中第i個數據元素的值注意i是指位置,第1個位置的數組是從0開始?*/
Status?GetElem(SqList?Lint?iElemType?*e)
{
????if(L.length==0?||?i<1?||?i>L.length)
????????????return?ERROR;
????*e=L.data[i-1];
????return?OK;
}
/*?初始條件:順序線性表L已存在?*/
/*?操作結果:返回L中第1個與e滿足關系的數據元素的位序。?*/
/*?若這樣的數據元素不存在,則返回值為0?*/
int?LocateElem(SqList?LElemType?e)
{
????int?i;
????if?(L.length==0)
????????????return?0;
????for(i=0;i ????{
????????????if?(L.data[i]==e)
????????????????????break;
????}
????if(i>=L.length)
????????????return?0;
????return?i+1;
}
/*?初始條件:順序線性表L已存在1≤i≤ListLength(L),?*/
/*?操作結果:在L中第i個位置之前插入新的數據元素e,L的長度加1?*/
Status?ListInsert(SqList?*Lint?iElemType?e)
{?
int?k;
if?(L->length==MAXSIZE)??/*?順序線性表已經滿?*/
return?ERROR;
if?(i<1?||?i>L->length+1)/*?當i比第一位置小或者比最后一位置后一位置還要大時?*/
return?ERROR;
if?(i<=L->length)????????/*?若插入數據位置不在表尾?*/
{
for(k=L->length-1;k>=i-1;k--)??/*?將要插入位置之后的數據元素向后移動一位?*/
L->data[k+1]=L->data[k];
}
L->data[i-1]=e;??????????/*?將新元素插入?*/
L->length++;
return?OK;
}
/*?初始條件:順序線性表L已存在,1≤i≤ListLength(L)?*/
/*?操作結果:刪除L的第i個數據元素,并用e返回其值,L的長度減1?*/
Status?ListDelete(SqList?*Lint?iElemType?*e)?
{?
????int?k;
????if?(L->length==0)???????????????/*?線性表為空?*/
return?ERROR;
????if?(i<1?||?i>L->length)?????????/*?刪除位置不正確?*/
????????return?ERROR;
????*e=L->data[i-1];
????if?(ilength)????????????????/*?如果刪除不是最后位置?*/
????{
????????for(k=i;klength;k++)/*?將刪除位置后繼元素前移?*/
L->data[k-1]=L->data[k];
????}
????L->length--;
????return?OK;
}
/*?初始條件:順序線性表L已存在?*/
/*?操作結果:依次對L的每個數據元素輸出?*/
Status?ListTraverse(SqList?L)
{
int?i;
????for(i=0;i ????????????visit(L.data[i]);
????printf(“\n“);
????return?OK;
}
void?unionL(SqList?*LaSqList?Lb)
{
int?La_lenLb_leni;
ElemType?e;
La_len=ListLength(*La);
Lb_len=ListLength(Lb);
for?(i=1;i<=Lb_len;i++)
{
GetElem(Lbi&e);
if?(!LocateElem(*Lae))
ListInsert(La++La_l
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???54766687??2015-07-31?10:48??大話數據結構\大話數據結構.pdf
?????文件???????5363??2011-12-20?09:02??大話數據結構\大話數據結構(代碼)\第3章線性表\01線性表順序存儲_List.c
?????文件???????7288??2011-03-05?02:16??大話數據結構\大話數據結構(代碼)\第3章線性表\02線性表鏈式存儲_li
?????文件???????3852??2011-01-13?19:42??大話數據結構\大話數據結構(代碼)\第3章線性表\03靜態(tài)鏈表_Staticli
?????文件???????2715??2011-08-05?08:57??大話數據結構\大話數據結構(代碼)\第4章棧與隊列\(zhòng)01順序棧_Stack.c
?????文件???????3453??2012-02-07?10:25??大話數據結構\大話數據結構(代碼)\第4章棧與隊列\(zhòng)02兩棧共享空間_DoubleStack.c
?????文件???????3266??2011-03-05?02:07??大話數據結構\大話數據結構(代碼)\第4章棧與隊列\(zhòng)03鏈棧_li
?????文件????????562??2011-01-13?19:54??大話數據結構\大話數據結構(代碼)\第4章棧與隊列\(zhòng)04斐波那契函數_Fibonacci.c
?????文件???????3243??2011-03-05?02:08??大話數據結構\大話數據結構(代碼)\第4章棧與隊列\(zhòng)05順序隊列_Queue.c
?????文件???????3591??2011-03-05?02:10??大話數據結構\大話數據結構(代碼)\第4章棧與隊列\(zhòng)06鏈隊列_li
?????文件???????6615??2011-01-13?19:59??大話數據結構\大話數據結構(代碼)\第5章串\01串_String.c
?????文件???????6115??2011-01-13?20:01??大話數據結構\大話數據結構(代碼)\第5章串\02模式匹配_KMP.c
?????文件???????7464??2011-01-13?20:07??大話數據結構\大話數據結構(代碼)\第6章樹\01二叉樹順序結構實現(xiàn)_BiTreeArray.c
?????文件???????4277??2011-01-13?20:11??大話數據結構\大話數據結構(代碼)\第6章樹\02二叉樹鏈式結構實現(xiàn)_BiTreeli
?????文件???????3277??2011-03-05?02:03??大話數據結構\大話數據結構(代碼)\第6章樹\03線索二叉樹_ThreadBinaryTree.c
?????文件???????1353??2011-04-14?10:02??大話數據結構\大話數據結構(代碼)\第7章圖\01鄰接矩陣創(chuàng)建_CreateMGraph.c
?????文件???????2115??2011-03-05?01:17??大話數據結構\大話數據結構(代碼)\第7章圖\02鄰接表創(chuàng)建_CreateALGraph.c
?????文件???????4518??2011-04-14?09:22??大話數據結構\大話數據結構(代碼)\第7章圖\03鄰接矩陣深度和廣度遍歷DFS_BFS.c
?????文件???????5978??2011-04-14?09:22??大話數據結構\大話數據結構(代碼)\第7章圖\04鄰接表深度和廣度遍歷DFS_BFS.c
?????文件???????2695??2011-04-14?09:23??大話數據結構\大話數據結構(代碼)\第7章圖\05最小生成樹_Prim.c
?????文件???????3368??2011-04-14?09:24??大話數據結構\大話數據結構(代碼)\第7章圖\06最小生成樹_Kruskal.c
?????文件???????3496??2012-07-16?10:59??大話數據結構\大話數據結構(代碼)\第7章圖\07最短路徑_Dijkstra.c
?????文件???????3193??2011-04-14?09:26??大話數據結構\大話數據結構(代碼)\第7章圖\08最短路徑_Floyd.c
?????文件???????3892??2011-04-14?09:26??大話數據結構\大話數據結構(代碼)\第7章圖\09拓撲排序_TopologicalSort.c
?????文件???????6015??2011-04-14?09:27??大話數據結構\大話數據結構(代碼)\第7章圖\10關鍵路徑_CriticalPath.c
?????文件???????2970??2011-01-13?20:54??大話數據結構\大話數據結構(代碼)\第8章查找\01靜態(tài)查找_Search.c
?????文件???????3076??2011-01-13?20:59??大話數據結構\大話數據結構(代碼)\第8章查找\02二叉排序樹_BinarySortTree.c
?????文件???????4955??2011-10-18?09:28??大話數據結構\大話數據結構(代碼)\第8章查找\03平衡二叉樹_AVLTree.c
?????文件???????4513??2011-09-26?14:07??大話數據結構\大話數據結構(代碼)\第8章查找\04B樹_BTree.c
?????文件???????1982??2011-03-05?01:59??大話數據結構\大話數據結構(代碼)\第8章查找\05散列表_HashTable.c
............此處省略13個文件信息
評論
共有 條評論