資料結構第二章練習題答案

2021-03-12 16:41:51 字數 2499 閱讀 2898

getelem(l,3,e);

printf("(6)順序表l的第3個元素=%c\n",e);

printf("(7)元素a的位置=%d\n",locateelem(l,'a'));

printf("(8)在第4個元素位置上插入f元素\n");

listinsert(l,4,'f');

printf("(9)輸出順序表l:");

displist(l);

printf("(10)刪除l的第3個元素\n");

listdelete(l,3,e);

printf("(11)輸出順序表l:");

displist(l);

printf("(12)釋放順序表l\n");

destroylist(l);

}//檔名:exp2-2.cpp

#include

#include

using namespace std;

typedef struct lnode //定義單鏈表結點型別

linklist;

void initlist(linklist *&l)

void destroylist(linklist *&l)

free(p);

}int listempty(linklist *l)

/*int listlength(linklist *l)

return(i);

}void displist(linklist *l)

printf("\n");

}int getelem(linklist *l,int i,elemtype &e)

if (p==null)

return 0;

else

}int locateelem(linklist *l,elemtype e)

if (p==null)

return(0);

else

return(n);

}*/int listinsert(linklist *&l,int i,string e)

if (p==null) //未找到第i-1個結點

return 0;

else找到第i-1個結點*p

}/*int listdelete(linklist *&l,int i,elemtype &e)

if (p==null未找到第i-1個結點

return 0;

else找到第i-1個結點*p

}*/void main()

//檔名:exp2-3.cpp

#include

#include

typedef char elemtype;

typedef struct dnode //定義雙鏈表結點型別

dlinklist;

extern void initlist(dlinklist *&l以下均為外部函式

extern void destroylist(dlinklist *&l);

extern int listempty(dlinklist *l);

extern int listlength(dlinklist *l);

extern void displist(dlinklist *l);

extern int getelem(dlinklist *l,int i,elemtype &e);

extern int locateelem(dlinklist *l,elemtype e);

extern int listinsert(dlinklist *&l,int i,elemtype e);

extern int listdelete(dlinklist *&l,int i,elemtype &e);

void main()

//檔名:exp2-4.cpp

#include

#include

typedef char elemtype;

typedef struct lnode //定義迴圈單鏈表結點型別

linklist;

extern void initlist(linklist *&l以下均為外部函式

extern void destroylist(linklist *&l);

extern int listempty(linklist *l);

extern int listlength(linklist *l);

extern void displist(linklist *l);

extern int getelem(linklist *l,int i,elemtype &e);

extern int locateelem(linklist *l,elemtype e);

extern int listinsert(linklist *&l,int i,elemtype e);

extern int listdelete(linklist *&l,int i,elemtype &e);

資料結構習題第二章線性表答案

第2章線性表 一 選擇題 二 判斷題 部分答案解釋如下。1 頭結點並不 僅起 標識作用,並且使操作統一。另外,頭結點資料域可寫入鍊錶長度,或作監視哨。4 兩種儲存結構各有優缺點,應根據實際情況選用,不能籠統說哪乙個好。7 集合中元素無邏輯關係。9 非空線性表第乙個元素無前驅,最後乙個元素無後繼。13...

資料結構練習題

習題3 棧和佇列 一 基本內容 棧和佇列的結構特點 在兩種儲存結構上如何實現棧和佇列的基本操作以及棧和佇列在程式設計中的應用。二 學習要點 1.掌握棧和佇列的特點。2 熟練掌握棧型別的兩種實現方法,即兩種儲存結構表示時的基本操作實現演算法,特別應注意棧滿和棧空的條件以及它們的描述方法。3 熟練掌握迴...

資料結構練習題

習題5 陣列和廣義表 一 基本內容 陣列定義及表示方式 特殊矩陣和稀疏矩陣的壓縮儲存方法及運算的實現 廣義表的邏輯結構和儲存結構。二 學習要點 1.了解陣列的兩種儲存表示方法,並掌握陣列在以行為主的儲存結構中的位址計算方法。2 掌握對特殊矩陣進行壓縮儲存時的下標變換公式。3 了解稀疏矩陣的兩種壓縮儲...