版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、數(shù)據(jù)結(jié)構(gòu)之二叉樹實(shí) 驗(yàn) 報(bào) 告 題目:二叉樹的遍歷和子樹交換 指導(dǎo)老師:楊政宇 班級:通信1202 姓名:徐江 學(xué)號(hào):0909121127需求分析1. 演示程序分別用多種遍歷算法遍歷二叉樹并把數(shù)據(jù)輸出。2. 輸入字符序列,遞歸方式建立二叉樹。3.在演示過程序中,用戶敲擊鍵盤,輸入數(shù)據(jù),即可看到數(shù)據(jù)的輸出。4.實(shí)現(xiàn)鏈?zhǔn)酱鎯?chǔ)的二叉樹的多種遍歷算法。遍歷算法包括:a) 中序遞歸遍歷算法、前序遞歸遍歷算法【選】b) 中序遍歷非遞歸算法c) 先序或后序遍歷非遞歸算法d) 建立中序線索,并進(jìn)行中序遍歷和反中序遍歷5.實(shí)現(xiàn)二叉樹的按層遍歷算法6.設(shè)計(jì)一個(gè)測試用的二叉樹并創(chuàng)建對應(yīng)的內(nèi)存二叉樹,能夠測試自己算法
2、的邊界(包括樹節(jié)點(diǎn)數(shù)為0、1以及1 的不同情形)。7.測試數(shù)據(jù):輸入數(shù)據(jù):-+a *b -c d -e f 概要設(shè)計(jì)說明:本程序在遞歸調(diào)用中用到了鏈表,在非遞歸調(diào)用時(shí)用到了棧。1. 棧的抽象數(shù)據(jù)類型ADT Stack數(shù)據(jù)對象:D=ai|aichar,i=1,2,3.數(shù)據(jù)關(guān)系:R=| ai -1,ai D,i=2,3.基本操作:InitStack(&S) 操作結(jié)果:構(gòu)造一個(gè)空棧StackEmpty( S ) 初始條件:棧S已存在。 操作結(jié)果:若S為空棧,則返回OK,否則返回ERROR。 Push( &S, e ) 初始條件:棧S已存在。 操作結(jié)果:插入元素e為新的棧頂元素。 Pop( &S, &
3、e ) 初始條件:棧S已存在且非空。 操作結(jié)果:刪除S的棧頂元素,并用e返回其值。 GetTop( S, &e ) 初始條件:棧S已存在且非空。 操作結(jié)果:用e返回S的棧頂元素。 2.二叉樹的抽象數(shù)據(jù)類型ADT BinaryTree 數(shù)據(jù)對象D:D是具有相同特性的數(shù)據(jù)元素的集合。 數(shù)據(jù)關(guān)系R: 若D=,則R=,稱BinaryTree為空二叉樹; 若D,則R=H,H是如下二元關(guān)系; (1)在D中存在惟一的稱為根的數(shù)據(jù)元素root,它在關(guān)系H下無前驅(qū); (2)若D-root,則存在D-root=D1,Dr,且D1Dr =; (3)若D1,則D1中存在惟一的元素x1,H,且存在D1上的 關(guān)系H1 H
4、;若Dr,則Dr中存在惟一的元素xr,H,且 存在上的關(guān)系Hr H;H=,H1,Hr; (4)(D1,H1)是一棵符合本定義的二叉樹,稱為根的左子樹;(Dr,Hr)是一 棵符合本定義的二叉樹,稱為根的右子樹。 基本操作: CreateBiTree( &T) 初始條件:給出二叉樹T的定義。 操作結(jié)果:按要求構(gòu)造二叉樹T。 PreOrderTraverse_re( T, print() ) 初始條件:二叉樹T存在,print是二叉樹全部結(jié)點(diǎn)輸出的應(yīng)用函數(shù)。 操作結(jié)果:先序遞歸遍歷T,對每個(gè)結(jié)點(diǎn)調(diào)用函數(shù)print一次且僅一次。一旦 print()失敗,則操作失敗。 InOrderTraverse(
5、T, print() ) 初始條件:二叉樹T存在,print是二叉樹全部結(jié)點(diǎn)輸出的應(yīng)用函數(shù)。 操作結(jié)果:中序非遞歸遍歷T,對每個(gè)結(jié)點(diǎn)調(diào)用函數(shù)print一次且僅一次。一 旦printf()失敗,則操作失敗。 InOrderTraverse_re(T,print() ) 初始條件:二叉樹T在在,print是二叉樹全部結(jié)點(diǎn)輸出的應(yīng)用函數(shù)。操作結(jié)果:中序遞歸遍歷T,對每個(gè)結(jié)點(diǎn)調(diào)用函數(shù)print一次且僅一次。一旦 printf()失敗,則操作失敗。 PreOrderTraverse(T,print() 初始條件:二叉樹T存在,print是二叉樹全部結(jié)點(diǎn)輸出的應(yīng)用函數(shù)。 操作結(jié)果:先序非遞歸遍歷T,對每個(gè)
6、結(jié)點(diǎn)調(diào)用函數(shù)print一次且僅一次。一 旦print()失敗,則操作失敗。 Levelorder(T) 初始條件:二叉樹T在在。操作結(jié)果:分層遍歷二叉樹T,并輸出。InOrderThreading(Thrt,T);初始條件:二叉樹T在在。操作結(jié)果:中序遍歷二叉樹,并將其中序線索化。InOrderTraverse_Thr( T, print);初始條件:二叉樹T在在。操作結(jié)果:中序非遞歸遍歷二叉線索樹TInThreading(p);初始條件:結(jié)點(diǎn)p在在。操作結(jié)果:結(jié)點(diǎn)p及子樹線索化。3.主程序的流程:void main()初始化;提示;執(zhí)行二叉數(shù)ADT函數(shù);4.本程序包含三個(gè)模塊1) 主程序模塊
7、void main()初始化;接受命令;顯示結(jié)果;2) 鏈表模塊。遞歸調(diào)用時(shí)實(shí)現(xiàn)鏈表抽象數(shù)據(jù)類型。3) 棧模塊。非遞歸調(diào)用時(shí)實(shí)現(xiàn)棧的抽象數(shù)據(jù)類型。詳細(xì)設(shè)計(jì)1.宏定義及全局變量#define TElemType char#define SElemType BiTree#define OK 1#define OVERFLOW 0#define ERROR 0#define STACK_INIT_SIZE 100#define STACKINCREMENT 10SqStack S;BiThrTree pre;BiThrTree i;2.函數(shù)定義int CreateBiTree(BiTree &T);
8、/創(chuàng)建二叉樹void PreOrderTraverse_re(BiTree T,void (*print)(TElemType e);/先序遞歸遍歷二叉樹void InOrderTraverse(BiTree T,int (*print)(TElemType e);/中序非遞歸遍歷二叉樹void InOrderTraverse_re(BiTree T,int (*print)(TElemType e) ;/中序遞歸遍歷二叉樹void PreOrderTraverse(BiTree T,int (*print)(TElemType e);/先序非遞歸遍歷二叉樹int print(TElemTyp
9、e e);/打印元素void InitStack(SqStack &S);/棧的初始化void Pop(SqStack &S,SElemType &e);void Push(SqStack &S,SElemType &e);int StackEmpty(SqStack S);int GetTop(SqStack S,SElemType &e);void Levelorder(BiTree T) ;void InOrderThreading(BiThrTree &Thrt,BiThrTree T);int InOrderTraverse_Thr(BiThrTree T, int (*print)
10、(TElemType e);void InThreading(BiThrTree p);3.二叉樹鏈表數(shù)據(jù)結(jié)構(gòu):typedef struct BiTNodeTElemType data;struct BiTNode *lchild ,*rchild;PointerTag LTag , RTag;BiTNode , *BiTree , BiThrNode , *BiThrTree; 基本操作:a)構(gòu)造二叉樹Tint CreateBiTree(BiTree &T)char ch;scanf(%c,&ch);if(ch= )T=NULL;elseif(!(T=(BiTNode *)malloc(si
11、zeof(BiTNode)return ERROR;T-data=ch;if (CreateBiTree(T-lchild) T-LTag=Link;if (CreateBiTree(T-rchild) T-RTag=Link;return OK;b)先序遞歸遍歷二叉數(shù)T,并輸出全部結(jié)點(diǎn)值。void PreOrderTraverse_re(BiTree T,int (*print)(TElemType e)if(T)if(print(T-data) PreOrderTraverse_re(T-lchild,print);PreOrderTraverse_re(T-rchild,print);r
12、eturn ;elsereturn ;c)中序非遞歸遍歷二叉樹T,并輸出全部結(jié)點(diǎn)值void InOrderTraverse(BiTree T,int (*print)(TElemType e)SqStack S;S.base=NULL;S.top=NULL;SElemType p=NULL;InitStack(S);Push(S,T);while(!StackEmpty(S)while(GetTop(S,p)&p)Push(S,p-lchild);Pop(S,p);if(!StackEmpty(S)Pop(S,p);print(p-data);Push(S,p-rchild);return;d
13、)中序遞歸遍歷二叉樹T,并輸出全部結(jié)點(diǎn)值void InOrderTraverse_re(BiTree T,int (*print)(TElemType e) if(T) InOrderTraverse_re(T-lchild,print); print(T-data); InOrderTraverse_re(T-rchild,print); e)中序遍歷二叉樹T,并將其中序線索化,Thrt指向頭結(jié)點(diǎn) void InOrderThreading(BiThrTree &Thrt,BiThrTree T)Thrt=(BiThrTree)malloc(sizeof(BiThrNode);Thrt-LT
14、ag=Link;/建頭結(jié)點(diǎn)Thrt-RTag=Thread;Thrt-rchild=Thrt;/右指針回指if(!T)Thrt-lchild=Thrt;elseThrt-lchild=T;pre=Thrt;InThreading(T);/中序遍歷進(jìn)行中序線索化pre-rchild=Thrt;pre-RTag=Thread;/最后一個(gè)結(jié)點(diǎn)線索化Thrt-rchild=pre;i=Thrt;/InOrderThreadingf)結(jié)點(diǎn)p線索化void InThreading(BiThrTree p) if (p) InThreading(p-lchild); / 左子樹線索化 if (!p-lchi
15、ld) / 建前驅(qū)線索 p-LTag = Thread; p-lchild = pre; if (!pre-rchild) / 建后繼線索 pre-RTag = Thread; pre-rchild = p; pre = p; / 保持pre指向p的前驅(qū) InThreading(p-rchild); / 右子樹線索化 / InThreadingg)/中序遍歷線索化二叉樹int InOrderTraverse_Thr(BiThrTree T, int (*print)(TElemType e)BiThrTree p=NULL;p=T-lchild;while(p!=T)while(p-LTag=
16、Link)p=p-lchild;if(!print(p-data)return ERROR;while(p-RTag=Thread & p-rchild!=T)p=p-rchild;print(p-data);p=p-rchild;return OK;4.棧數(shù)據(jù)結(jié)構(gòu):typedef structSElemType *base;SElemType *top;int stacksize;SqStack;基本操作:a)創(chuàng)建一個(gè)空棧void InitStack(SqStack &S)S.base=(SElemType*)malloc(STACK_INIT_SIZE*sizeof(SElemType);
17、S.top=S.base;/初始為空S.stacksize=STACK_INIT_SIZE;return;b)棧頂插入元素void Push(SqStack &S,SElemType &e)if(S.top-S.base=S.stacksize)S.base=(SElemType*)realloc(S.base,(STACK_INIT_SIZE+STACKINCREMENT)*sizeof(SElemType);S.top=S.base+S.stacksize;S.stacksize+=STACKINCREMENT;*S.top+=e;c)棧頂刪除元素void Pop(SqStack &S,S
18、ElemType &e)if(S.top=S.base)return;e=*-S.top;return;d)判斷棧是否為空棧int StackEmpty(SqStack S)if(S.top=S.base)return OK;elsereturn ERROR;e)e返回S的棧頂元素int GetTop(SqStack S,SElemType &e)if(S.top=S.base)return ERROR;e=*(S.top-1);return OK;5.主函數(shù)void main()int flag;BiTree T;BiThrTree Thrt;printf(*n);printf(* 實(shí)驗(yàn)12
19、 二叉樹的遍歷 *n);printf(* 1. 實(shí)現(xiàn)二叉樹的不同遍歷算法和二叉樹的中序線索化算法 *n);printf(* a) 中序遞歸遍歷算法; *n);printf(* b) 先序遞歸遍歷算法; *n);printf(* c) 中序遍歷的非遞歸算法; *n);printf(* d) 先序或后序遍歷非遞歸算法之一; *n);printf(* e) 建立中序線利用線索進(jìn)行中序遍歷和反中序遍歷。 *n);printf(* 2. 實(shí)現(xiàn)二叉樹的按層遍歷算法。 *n);printf(*n);printf(n選擇操作:nt1.先序與中序遍歷算法nt2.中序線索的中序遍歷和反中序遍歷算法nt3.按層遍歷
20、算法n請選擇:);scanf(%d,&flag);switch(flag) case 1:printf(前序遞歸創(chuàng)建二叉樹(空格 表示此結(jié)點(diǎn)為空):n);getchar();CreateBiTree(T);printf(中序遞歸遍歷輸出:);InOrderTraverse_re(T,print);printf(n前序遞歸遍歷輸出:);PreOrderTraverse_re(T,print);printf(n中序非遞歸遍歷輸出:);InOrderTraverse(T,print);printf(n前序非遞歸遍歷輸出:);PreOrderTraverse(T,print); printf(n);b
21、reak;case 2:printf(前序遞歸創(chuàng)建二叉樹(空格 表示此結(jié)點(diǎn)為空):n);getchar();CreateBiTree(T);printf(n中序遍歷線索化二叉樹:);InOrderThreading(Thrt , T);InOrderTraverse_Thr(Thrt , print);break;case 3: printf(前序遞歸創(chuàng)建二叉樹(空格 表示此結(jié)點(diǎn)為空):n);getchar();CreateBiTree(T);printf(n按層遍歷輸出:);Levelorder(T);printf(n);break;default:return;6. 函數(shù)間調(diào)用關(guān)系main
22、InOrderTraverse_reCreateBitreePreOrderTraverse_reInOrderTraversePreOrderTraverseInOrderThreadingInOrderTraverse_ThrThreadingStack操作調(diào)試分析1、二叉樹的分層遍歷,開始時(shí)想用隊(duì)列來做,但考慮到比較麻煩,因而改為數(shù)組模擬隊(duì)列,簡單易懂,課后可自行嘗試用隊(duì)列來做。2 在線索化二叉樹時(shí)考慮到如果將兩種存儲(chǔ)結(jié)構(gòu)分開將導(dǎo)致兩個(gè)類型的指針不能互相傳值,造成許多麻煩。比較兩種存儲(chǔ)結(jié)構(gòu)發(fā)現(xiàn),線索二叉樹比二叉樹多了兩個(gè)標(biāo)志域LTag,Rtag。于是把兩種存儲(chǔ)結(jié)構(gòu)合并為BiThrNode
23、,并在建立二叉樹時(shí)把LTag,Rtag均置為Link。程序正常運(yùn)行。 3.進(jìn)入演示程序BiTree.cpp,完成編譯,連接(即按下Ctrl F5)進(jìn)入演示界面,或直接打開執(zhí)行文件BiTree.exe,產(chǎn)生如下圖所示的界面:1 用戶需根據(jù)用戶提示信息操作,輸入二叉樹(以空格表示空結(jié)點(diǎn)),輸入完成后按回車鍵,屏幕上打印出對應(yīng)于該二叉樹的各種遍歷結(jié)果。如下圖:6、 測試結(jié)果輸入:-+a *b -c d -e f 屏幕輸出:中序遞歸遍歷輸出:a+b*c-d前序遞歸遍歷輸出:+a*b-cd中序非遞歸遍歷輸出:a+b*c-d前序非遞歸遍歷輸出:+a*b-cd按層遍歷輸出:+a*b-cd中序遍歷線索化二叉樹
24、:a+b*c-d7、 附錄BiTree.cppBiTree.exe#include#include#define QElemType BiTNode#define TElemType char#define OK 1#define OVERFLOW 0#define ERROR 0#define STACK_INIT_SIZE 100#define STACKINCREMENT 10typedef enum PointerTagLink,Thread;/Link=0,指針,Thread=1,線索typedef struct BiTNodeTElemType data;struct BiTNod
25、e *lchild ,*rchild;PointerTag LTag , RTag;BiTNode , *BiTree , BiThrNode , *BiThrTree;/二叉樹 #define QElemType BiTNode#define SElemType BiTreetypedef structSElemType *base;SElemType *top;int stacksize;SqStack;/全局變量SqStack S;BiThrTree pre;BiThrTree i;/*函數(shù)聲明*/ int CreateBiTree(BiTree &T);/創(chuàng)建二叉樹void PreOr
26、derTraverse_re(BiTree T,void (*print)(TElemType e);/先序遞歸遍歷二叉樹void InOrderTraverse(BiTree T,int (*print)(TElemType e);/中序非遞歸遍歷二叉樹void InOrderTraverse_re(BiTree T,int (*print)(TElemType e) ;/中序遞歸遍歷二叉樹void PreOrderTraverse(BiTree T,int (*print)(TElemType e);/先序非遞歸遍歷二叉樹int print(TElemType e);/打印元素void I
27、nitStack(SqStack &S);/棧的初始化void Pop(SqStack &S,SElemType &e);void Push(SqStack &S,SElemType &e);int StackEmpty(SqStack S);int GetTop(SqStack S,SElemType &e);void Levelorder(BiTree T) ;void InOrderThreading(BiThrTree &Thrt,BiThrTree T);int InOrderTraverse_Thr(BiThrTree T, int (*print)(TElemType e);vo
28、id InThreading(BiThrTree p);/*二叉樹的創(chuàng)建遞歸創(chuàng)建*/int CreateBiTree(BiTree &T)char ch;scanf(%c,&ch);if(ch= )T=NULL;elseif(!(T=(BiTNode *)malloc(sizeof(BiTNode)return ERROR;T-data=ch;if (CreateBiTree(T-lchild) T-LTag=Link;if (CreateBiTree(T-rchild) T-RTag=Link;return OK; /*/ /* 先序遞歸遍歷輸出 */ /*/void PreOrderTra
29、verse_re(BiTree T,int (*print)(TElemType e)if(T)if(print(T-data) PreOrderTraverse_re(T-lchild,print);PreOrderTraverse_re(T-rchild,print);return ;elsereturn ; /*/ /* 中序非遞歸遍歷輸出 */ /*/void InOrderTraverse(BiTree T,int (*print)(TElemType e)SqStack S;S.base=NULL;S.top=NULL;SElemType p=NULL;InitStack(S);P
30、ush(S,T);while(!StackEmpty(S)while(GetTop(S,p)&p)Push(S,p-lchild);Pop(S,p);if(!StackEmpty(S)Pop(S,p);print(p-data);Push(S,p-rchild);return; /*/ /* 中序遞歸遍歷輸出 */ /*/void InOrderTraverse_re(BiTree T,int (*print)(TElemType e) if(T) InOrderTraverse_re(T-lchild,print); print(T-data); InOrderTraverse_re(T-r
31、child,print); return ; /*/ /* 按照前序非遞歸遍歷二叉樹:棧 */ /*/ void PreOrderTraverse(BiTree T,int (*print)(TElemType e) SqStack S;S.base=NULL;S.top=NULL;SElemType p=T;/p指向當(dāng)前訪問的結(jié)點(diǎn) InitStack(S); while(p|!StackEmpty(S) if(p) print(p-data); Push(S,p); p=p-lchild; else Pop(S,p); p=p-rchild; return; void InOrderThre
32、ading(BiThrTree &Thrt,BiThrTree T)/中序遍歷二叉樹T,并將其中序線索化,Thrt指向頭結(jié)點(diǎn)Thrt=(BiThrTree)malloc(sizeof(BiThrNode);Thrt-LTag=Link;/建頭結(jié)點(diǎn)Thrt-RTag=Thread;Thrt-rchild=Thrt;/右指針回指if(!T)Thrt-lchild=Thrt;elseThrt-lchild=T;pre=Thrt;InThreading(T);/中序遍歷進(jìn)行中序線索化pre-rchild=Thrt;pre-RTag=Thread;/最后一個(gè)結(jié)點(diǎn)線索化Thrt-rchild=pre;i=
33、Thrt;/InOrderThreadingvoid InThreading(BiThrTree p) if (p) InThreading(p-lchild); / 左子樹線索化 if (!p-lchild) / 建前驅(qū)線索 p-LTag = Thread; p-lchild = pre; if (!pre-rchild) / 建后繼線索 pre-RTag = Thread; pre-rchild = p; pre = p; / 保持pre指向p的前驅(qū) InThreading(p-rchild); / 右子樹線索化 / InThreadingint InOrderTraverse_Thr(B
34、iThrTree T, int (*print)(TElemType e)/中序遍歷線索化后的二叉樹BiThrTree p=NULL;p=T-lchild;while(p!=T)while(p-LTag=Link)p=p-lchild;if(!print(p-data)return ERROR;while(p-RTag=Thread & p-rchild!=T)p=p-rchild;print(p-data);p=p-rchild;return OK;/*以下為輔助函數(shù)*/int print(TElemType e)printf(%c,e);return OK;/*棧函數(shù)*/*棧的初始化*/v
35、oid InitStack(SqStack &S)S.base=(SElemType*)malloc(STACK_INIT_SIZE*sizeof(SElemType);S.top=S.base;/初始為空S.stacksize=STACK_INIT_SIZE;return;/*棧頂插入元素*/void Push(SqStack &S,SElemType &e)if(S.top-S.base=S.stacksize)S.base=(SElemType*)realloc(S.base,(STACK_INIT_SIZE+STACKINCREMENT)*sizeof(SElemType);S.top
36、=S.base+S.stacksize;S.stacksize+=STACKINCREMENT;*S.top+=e;/*棧頂刪除元素*/void Pop(SqStack &S,SElemType &e)if(S.top=S.base)return;e=*-S.top;return;int StackEmpty(SqStack S)/*若棧為空棧,則返回OK,否則返回ERROR*/if(S.top=S.base)return OK;elsereturn ERROR;int GetTop(SqStack S,SElemType &e)if(S.top=S.base)return ERROR;e=*
37、(S.top-1);return OK; /*/ /* 按層次順序建立一棵二叉樹 */ /*/ void Levelorder(BiTree T) int i,j; BiTNode *q20,*p; /*q20用于模擬隊(duì)列,存儲(chǔ)入隊(duì)的結(jié)點(diǎn)*/ p=T; if(p!=NULL) i=1;qi=p;j=2; /*i為隊(duì)首位置,j為隊(duì)尾位置*/ while(i!=j) p=qi; printf(%c,p-data); /*訪問隊(duì)首元素*/ if (p-lchild!=NULL) qj=p-lchild; j+; /*若隊(duì)首元素左鏈域不為空,則將其入隊(duì)列*/ if (p-rchild!=NULL) qj=p-rchild; j+; /*若隊(duì)首元素右鏈域不為空,則將其入隊(duì)列*/ i+; /*將隊(duì)首移到下一個(gè)位置*/ void main()int flag;BiTree T;BiThrTree Thrt;printf(*n);printf(* 實(shí)驗(yàn)12 二叉樹的遍歷 *n);printf(* 1. 實(shí)現(xiàn)二叉
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度藥店店員藥品銷售目標(biāo)責(zé)任合同
- 2025年度智能車庫產(chǎn)權(quán)轉(zhuǎn)讓合同范本
- 2025年度汽車租賃保險(xiǎn)服務(wù)合同范本
- 《期中測評卷(圖片版無答案)》期中檢測
- 江蘇省南京市六區(qū)2025屆中考四模生物試題含解析
- 南京理工大學(xué)紫金學(xué)院《工業(yè)設(shè)計(jì)法規(guī)》2023-2024學(xué)年第一學(xué)期期末試卷
- 南京大學(xué)金陵學(xué)院《軟件開發(fā)工具實(shí)踐》2023-2024學(xué)年第一學(xué)期期末試卷
- 南京財(cái)經(jīng)大學(xué)紅山學(xué)院《機(jī)器學(xué)習(xí)及應(yīng)用》2023-2024學(xué)年第一學(xué)期期末試卷
- 南充職業(yè)技術(shù)學(xué)院《工業(yè)通風(fēng)與防塵》2023-2024學(xué)年第一學(xué)期期末試卷
- 南充電影工業(yè)職業(yè)學(xué)院《戶外救援》2023-2024學(xué)年第一學(xué)期期末試卷
- 意識(shí)障礙患者的護(hù)理診斷及措施
- 2024版《53天天練單元?dú)w類復(fù)習(xí)》3年級語文下冊(統(tǒng)編RJ)附參考答案
- 2025企業(yè)年會(huì)盛典
- 215kWh工商業(yè)液冷儲(chǔ)能電池一體柜用戶手冊
- 場地平整施工組織設(shè)計(jì)-(3)模板
- 交通設(shè)施設(shè)備供貨及技術(shù)支持方案
- 美容美發(fā)店火災(zāi)應(yīng)急預(yù)案
- 餐車移動(dòng)食材配送方案
- 項(xiàng)目工程師年終總結(jié)課件
- 一年級口算練習(xí)題大全(可直接打印A4)
- 電動(dòng)車棚消防應(yīng)急預(yù)案
評論
0/150
提交評論