函式:
1. initlist(dlinklist *&l):
初始化雙鏈表l.
2. destroylist(dlinklist *l):
釋放雙鏈表l.
3. listempty(dlinklist *l):
判斷雙鏈表
l是否為空表。
4. listlength(dlinklist *l):
返回雙鏈表
l的元素個數。
5. displist(dlinklist *l):
輸出雙鏈表l.
6. getelem(dlinklist *l,int i,elemtype &e):
獲取雙鏈表l中第
i個元素。
7. locateelem(dlinklist *l,elemtype e):
在雙鏈表
l中查詢元素e.
8. listinsert(dlinklist *&l,int i,elemtype e):
在雙鏈表l中第
i個位置上插入元素e.
9. listdelete(dlinklist *&l,int i,elemtype e):
雙鏈表l
中刪除第
i個元素。
具體**實現如下:
#include
#include
typedef char elemtype;
typedef struct dnode //定義雙鏈表結點型別
dlinklist;
void initlist(dlinklist *&l)
void destroylist(dlinklist *&l)
free(p);
}int listempty(dlinklist *l)
int listlength(dlinklist *l)
return(i);
}void displist(dlinklist *l)
printf("/n");
}int getelem(dlinklist *l,int i,elemtype &e)
if(p==null)
return 0;
else
}int locateelem(dlinklist *l,elemtype e)
if(p==null)
return(0);
else
return(n);
}int listinsert(dlinklist *&l,int i,elemtype e)
if(p==null)//未找到第i-1個結點
return(0);
else//找到第i-1個結點*p
}int listdelete(dlinklist *&l,int i,elemtype &e)
if(p==null)//未找到第i-1個結點
return 0;
else//找到第i-1個結點*p
}void main()
雙鏈表的各種基本運算
輸入 include includetypedef char elemtype typedef struct lnode linklist 建立雙鏈表 void createlistf linklist l,elemtype a,int n 初始化線性表 void initlist linklist...
單鏈表的各種基本運算
輸入 實驗題2 2 include includetypedef char elemtype typedef struct lnode linklist 使用頭插法 void createlistf linklist l,elemtype a,int n 使用尾插法 void createlistr...
單鏈表各種基本運算的演算法
include includetypedef char elemtype typedef struct lnode linknode 宣告單鏈表節點型別 void createlistf linknode l,elemtype a,int n 頭插法建立單鏈表 void createlistr li...