實驗報告
實驗課程: 資料結構
實驗專案實驗
專業: 電腦科學與技術
姓名於凡
學號: 10703070328
指導教師汪林林
實驗時間: 2008-12-7
重慶工學院計算機學院
實驗一線性表
1. 實驗要求
掌握資料結構中線性表的基本概念。
熟練掌握線性表的基本操作:建立、插入、刪除、查詢、輸出、求長度及合併並運算在順序儲存結構上的實驗。
熟練掌握鍊錶的各種操作和應用。
2. 實驗內容
編寫乙個函式,從乙個給定的順序表a中刪除元素值在x到y之間的所有元素,要求以較高效率來實現。
#include
typedef int elemtype;
#define maxsize 10
int del(int a,int n,elemtype x,elemtype y)
return(n-k);
}void main()
試寫乙個演算法,在無頭結點的動態單鏈表上實現線性表插入操作insert(l,i,b)。
void insert(linklist &l,int i,elemtype x)
else
else
if(p||j>i-1)
return error;
s=(linklist)malloc(sizeof(lnode));
s->data=x;s->next=p->next;p->next=s;
}}} 生成兩個多項式pa和pb,求他們的和,輸出「和多項式」。
typedef struct node
polynode;
polynode *polyadd(polynode *pa,polynode *pb)
else
if(p->exp==q->exp)
x=p->coef+q->coef;
if(x!=0)
p->coef=x;
s=p;
else
pre->next=p->next;
free(p);
p=pre->next;
r=p;
q=q->next;
free(r);
else
if(p->expexp)
pre=p;
p=p->next;
if(q!=null)
pre->next=q;
free(pb);
} 設計乙個統計選票的演算法,輸出每個候選人的得票結果。
typedef int elemtype
typedef struct linknode
nodetype;
nodetype *create()
else
i++;
}return h;
}void sat(nodetype *h,int a)
}void main()
3. 實驗心得體會
線性表是最簡單的、最常用的一種資料結構,是實現其他資料結構的基礎。
實驗二棧與佇列
1. 實驗要求
了解棧和佇列的特性,以便靈活運用。
熟練掌握棧和有關佇列的各種操作和應用。
2. 實驗內容
2.1 設乙個算術表示式包括圓括號,方括號和花括號三種括號,編寫乙個演算法判斷其中的括號是否匹配。
#include
#include
#include
#define null 0
typedef struct list
list;
void push(char,list *);
int pop(char.list *);
void deal(char *str);
main(void)
void deal(char *str)
l->next=null;
while(*str)
')if(pop(*str,l))
puts("錯誤,請檢查!");
puts("按回車鍵退出");
getchar();exit(-2);
str++;
}if(l->next)
}void push(char c,list *l)
p->str=c;
p->next=l->next;
l->next=p;
}#define check(s) if(l->next->str==s)
int pop(char c,list *l)
':check('
return 1;
實驗三樹
1. 實驗要求
掌握二叉樹,二叉樹排序數的概念和儲存方法。
掌握二叉樹的遍歷演算法。
熟練掌握編寫實現樹的各種運算的演算法。
2. 實驗內容
編寫程式,求二叉樹的結點數和葉子數。
#include
#include
struct nodebnode;
typedef struct node *blink;
blink creat()
return bt;
}int n=0,n1=0;
void preorder(blink bt)
}void main()
編寫遞迴演算法,求二叉樹中以元素值為x的結點為根的子數的深度。
資料結構實驗報告
實驗一線性表的基本操作 1 實驗目的2 2 實驗環境2 3 實驗內容,主要 除錯與執行 2 4 總結14 實驗二棧的基本操作 1 實驗目的15 2 實驗環境15 3 實驗內容,主要 除錯與執行 15 4 總結18 實驗三赫夫曼樹 1 實驗目的18 2 實驗環境18 3 實驗內容,主要 除錯與執行 1...
資料結構實驗報告
實驗題目 計算機與通訊工程學院 2014 實驗一線性表的應用 實驗目的 1 掌握線性表的邏輯結構定義 2 掌握線性表的兩種儲存結構 順序和鏈式 3 掌握順序表和煉表的定義及基本操作 實驗內容 通過程式設計完成具有一定實際意義的課題,加深對線性表應用的理解和掌握。參考題目如下所示。學生可在完成以下題目...
資料結構實驗報告
實驗一 資料庫基本操作 一 實驗目的 1.熟悉ms sql server執行介面,掌握伺服器的基本操作。2.掌握介面操作方法完成使用者資料庫建立 備份和還原。3.建立兩個實驗用的資料庫,使用企業管理器和查詢分析器對資料庫和表進行基本操作。二 實驗預習內容 在認真閱讀教材及實驗指導書的基礎上,上機前請...