資料結構
實驗報告
實驗一線性表的應用
實驗目的: 掌握線性表的邏輯結構定義、線性表的兩種儲存結構(順序和鏈式);
掌握順序表和煉表的定義及基本操作,運用其解決一些實際問題。
實驗題目:
1、 請編寫26個字母按特定字母值插入或刪除的完整程式,可自行選用順序儲存或鍊錶結構。
源**:
#include<>
#include<>
typedef struct shuju
test;
shuju *p,*q,*r,*head;
int l;
int m=sizeof(test);
void build();
void display();
int insert(char,char);
int delet(char);
void build()
p->data=i+'a'-1;
p->link=null;
}void display()
printf("%c\n",p->data);
}int insert(char x,char y)else
if(p->data==y)
else
} l++;
return 0;
}int delet(char x)
else
if(p->data==x)
else return 0;
}l--;
return 0;
}void main()
執行結果:
2、建立乙個鍊錶
程式源**:
include<>
#include<>
typedef struct list
node,*link;
//typedef struct list node;
//typedef node *link;
void main()
ptr=head;
while(ptr!=null) }
執行結果:
3、反向輸出乙個鍊錶。
程式源**:
#include<>
#include<>
typedef struct list
node,*link;
void main()
ptr=ptr->next;
while(ptr!=null) }
執行結果:
實驗二棧和佇列的應用
實驗目的: 掌握棧和佇列的結構定義和特徵;
掌握棧和佇列的基本操作以及棧和佇列在程式設計中的應用。
實驗題目:
1、棧實現數制轉換
程式源**:
#include<>
#include<>
typedef struct stack
sqstack,*psqstack;
int initstack(sqstack **s);
int stackempty(sqstack *s);
int push(sqstack *s,int e);
int pop(sqstack *s,int *e);
int initstack(sqstack **s)int stackempty(sqstack s)int push(sqstack *s,int e)*(s->top++)=e;
return 1;
}int pop(sqstack *s,int *e)void visit(int *e)
void conversion()
if(!n) push(s,0);
while(n)
printf("the result is:");
while(!stackempty(*s)) }main()
執行結果:
實驗三串的應用
實驗目的: 掌握串的資料型別定義,串的儲存結構;
掌握串的基本操作的實現和應用。
實驗題目:
1、編寫乙個實現串的置換操作replace(&s,t,v)的演算法解:int replace(stringtype &s,stringtype t,stringtype v)
資料結構實驗報告
實驗報告 實驗課程 資料結構 實驗專案實驗 專業 電腦科學與技術 姓名於凡 學號 10703070328 指導教師汪林林 實驗時間 2008 12 7 重慶工學院計算機學院 實驗一線性表 1.實驗要求 掌握資料結構中線性表的基本概念。熟練掌握線性表的基本操作 建立 插入 刪除 查詢 輸出 求長度及合...
資料結構實驗報告
實驗一線性表的基本操作 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 掌握順序表和煉表的定義及基本操作 實驗內容 通過程式設計完成具有一定實際意義的課題,加深對線性表應用的理解和掌握。參考題目如下所示。學生可在完成以下題目...