freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

數(shù)據(jù)結(jié)構(gòu)算法設(shè)計與實現(xiàn)指導(下)ppt(完整版)

2025-02-25 06:35上一頁面

下一頁面
  

【正文】 define MAX_VERTEX_NUM 20 define MAX_NAME 3 typedef int VRType。 printf(\nPostOrder:)。 clrscr()。 return OK。 } 先序遍歷二叉樹 Status PreOrderTraverse(BiTree T,Status(*Visit)(TElemType)) { if(T) { Visit(Tdata)。 if(!*T) exit(OVERFLOW)。 int i。 return OK。 按完全二叉樹的順序存儲的序列為: ab○ cd○○○○ ef○○○○○○○○○ g “ ○ ” 表示為空結(jié)點。 } } } printf(\n)。 else{ if(T[i*2+1]!=0 amp。 else printf((Root Node) )。 for(i=(pow(2,j1)1)。利用性質(zhì) 5通過幾個選擇判斷,輸出某結(jié)點的有關(guān)關(guān)容,如該結(jié)點是否有雙親結(jié)點,沒有,則顯示該結(jié)點為根結(jié)點,有,則顯示其雙親結(jié)點;是否為葉子結(jié)點,是,則顯示該結(jié)點為葉子結(jié)點,不是,則顯示其左右孩子結(jié)點。 } 創(chuàng)建完全二叉樹 計算二叉樹深度 注: pow(2,j)表示 2j。 printf(Input NodeNumber:)。 實驗內(nèi)容 ? 創(chuàng)建完全二叉樹 ? 計算二叉樹深度 ? 輸出完全二叉樹 ? 輸出二叉樹主函數(shù) ? 完全二叉樹遍歷簡介 ? 建立空二叉樹 ? 銷毀二叉樹 ? 構(gòu)造二叉樹 ? 輸出二叉樹結(jié)點 ? 先序遍歷二叉樹 ? 中序遍歷二叉樹 ? 后序遍歷二叉樹 ? 遍歷主函數(shù) 退出 算法描述: 首先輸入建立完全二叉樹的結(jié)點的個數(shù),通過個數(shù)控制輸入結(jié)點。 ? DestroySMatrix(amp。 ? clrscr()。p=。 } 稀疏矩陣的轉(zhuǎn)置 ? Status TransposeSMatrix(TSMatrix M,TSMatrix *T) ? { ? int p,q,col。 (*M).nu=0。amp。i++) ? { ? do ? { ? printf(No.%d:,i,(*M).mu,(*M).nu)。 ? scanf(%d,%d,%d,amp。 ? int mu,nu,tu。 ? typedef int Status。 printf(\=\n)。k++){ ? Assign(amp。i++) ? printf(%d ,*(p+i))。 ? printf(=)。 ? int i,j,k。 Status result。 int off。i。 } if(!(*A).constants) return ERROR。i) (*A).constants[i]=(*A).bounds[i+1]*(*A).constants[i+1]。 } va_end(ap)。 (*A).bounds=(int *)malloc(dim*sizeof(int))。 int *bounds。 define MAX_ARRAY_DIM 8 define ERROR 0 define OVERFLOW 2 define UNDERFLOW 2 define OK 1 typedef int ElemType。 ?在 C語言環(huán)境下實現(xiàn)數(shù)組的應用操作: ①用基本操作集定義一個三維數(shù)組 (如 A[3][4][2]), 并輸出。 這個三維數(shù)組表示為: A[3][4][2],是一個 3頁 4行 2列的數(shù)組。 va_list ap。++i) { (*A).bounds[i]=va_arg(ap,int)。 (*A).constants[dim1]=1。 } if(!(*A).bounds) return ERROR。 Status Locate(Array A,va_list ap,int *off) { int i,ind。 } 取出指定下標的數(shù)據(jù)元素 算法思想: 通過 Locate()函數(shù)查找指定下標的數(shù)據(jù)元素,如存在,將其值送入變量 e中。 return OK。 *((*A).base+off)=e。 ? InitArray(amp。 ? printf(\n\=)。jbound2。 } ? printf(\n)。 ? } ? DestroyArray(amp。 ? // mu為稀疏矩陣的行數(shù), nu為列數(shù), tu為非零元的個數(shù)。 ? ElemType e。 ? printf(\nInput elements......\n\n)。 ? k=0。 ? (*M).data[i].e=e。 for(i=1。 ? for(col=1。 ? } ? } ? return OK。 ? TransposeSMatrix(A,amp。 ?理解二叉樹的基本操作的算法,及在 C語言環(huán)境中一些主要基本操作的實現(xiàn)。 typedef TElemType SqBiTree[20]。i++) { scanf(%d,amp。 return j。 for(j=1。 if(T[(i+1)/21]!=0amp。 (!((T[i*2+2]!=0 amp。amp。 printf(%d,BiTreeDepth(NodeNum))。 struct BiTNode *lchild,*rchild。 free(*T)。 39。(*T)rchild)。 } 中序遍歷二叉樹 Status InOrderTraverse(BiTree T,Status(*Visit)(TElemType)) { if(T) { InOrderTraverse(Tlchild,Visit)。 return OK。 PreOrderTraverse(T,visitT)。 ?理解圖的基本操作的算法,及在 C語言環(huán)境中一些主要基本操作的實現(xiàn)。 //有向圖、有向網(wǎng)、無向圖、無向網(wǎng) 鄰接矩陣存儲結(jié)構(gòu) typedef struct { VRType adj。 //圖的種類標志 }MGraph。 ? printf(Please input vexnum, arum:)。 ? for(i=0。k(*G).arum。 int i。++i) printf([%d]=%s\n,i,[i])。 printf(\n)。 typedef int QElemType。 }QNode,*QueuePtr。 //指向下一條弧的指針 InfoType *info。 //頂點的向量 int vexnum,arum。 ? VertexType va,vb。 ? for(i=0。 i=LocateVex(*G,va)。 ? p=(ArcNode*)malloc(sizeof(ArcNode))。 v1=LocateVex(G,v)。 ? w1=LocateVex(G,w)。 ArcNode *p,*q。 ? free(p)。printf(%d:,i)。 關(guān)于隊列的操作不在描述 。Q)。Q,amp。Q,w)。 DestroyGraph(amp。 }ElemType。 printf( )。 } ? 直接插入排序 printf(\ni=%d: (%d) ,i,[i].key)。k++) printf(%d ,(*L).r[k].key)。 進入 TC 主函數(shù) void main() { ElemType *d。 for(i=1。la)。 快速排序 int Partition(SqList *L,int low,int high) {//一趟快速排序。 (*L).r[low]=(*L).r[high]。i=(*L).length。 QSort(L,pivotloc+1,high)。 printf(\n)。 scanf(%d,amp。print(la)。 迷宮 ? 算法思想:在算法中以二維坐標定義一個當前位置,若當前位置可通,則納入當前路徑(入棧),并按照東南西北的順序繼續(xù)下一位置探索,即切換下一位置為當前位置,重復直至到達出口。 SElemType e。 =0。 return TRUE。S,e)。S)。 ? 初始定義時若該位置可通用 1表示,若該位置不通用 0表示。QuickSort(amp。 printf(Input elements seperated by blank:)。 主要思想是:在輸入關(guān)鍵字時進行判斷,有重復的 加以標識。 void QuickSort(SqList *L) { QSort(L,1,(*L).length)。 return low。amp。 int i。 define MAXSIZE 20 typedef int KeyType。i++){ scanf(%d,amp。 int I。 for(i=1。 for(k=2。i=(*L).length。 typedef struct { ElemType r[MAXSIZE+1]。 } 進入 TC 鄰接矩陣創(chuàng)建無向圖執(zhí)行結(jié)果 廣度優(yōu)先遍歷執(zhí)行結(jié)果 實驗八:實驗目的及要求 ?理解排序的概念,及直接插入排序、快速排序算法的思想。 ? } 主函數(shù) main() { ALGraph G。 ? strcpy(u1,*GetVex(G,u))。v。 ? VertexType u1,w1。 ? while(p) ? { ? printf(%d,padjvex)。 ? } ? } ? } 輸出圖的鄰接表 ? void Display(ALGraph G) ? { ? int i。 (*G).arum=0。 ? while(pamp。 if(p) return padjvex。 pinfo=NULL。 ? if(i==1||j==1) ? exit(0)。++i) ? { ? scanf(%s,(*G).vertices[i].data)。 ? (*G).kind = DN。 }ALGraph。 typedef struct{//鄰接表的頂點結(jié)構(gòu)。 QueuePtr front,rear。 typedef enum{DG,DN,UDG,UDN}GraphKind。 clrscr()。 for(i=0。i。w)。++i) ? for(j=0。(*G).vexnum,amp。 ? 在輸入弧時,為了突出修改權(quán)值的操作,沒有對輸錯的弧 (即圖中不存在的頂點的弧 )進行判斷,只以弧的輸入計數(shù)對程序進行控制,讀者可自行添加。 //該弧相關(guān)信息的指針 }ArcCell, AdjMatrix[MAX_VERTEX_NUM][MAX_VERTEX_NUM]。 ②利用基本操作集,實現(xiàn)采用鄰接表表示的無向圖的非遞歸的廣度優(yōu)先遍歷算法。 InOrderTraverse(T,visitT)。
點擊復制文檔內(nèi)容
教學課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1