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

正文內(nèi)容

圖的基本概念圖的存儲(chǔ)表示圖的遍歷與連通性最小生成樹最短-展示頁

2025-07-27 18:09本頁面
  

【正文】 kdest。 while ( p != NULL ) { if ( pdest == w amp。 } return 1。 } template Class Type int Graph Type :: GetFirstNeighbor ( int v ) { //查找頂點(diǎn) v 第一個(gè)鄰接頂點(diǎn)在鄰接表中位置 if ( v != 1 ) { //若頂點(diǎn)存在 EdgeType * p = NodeTable[v].adj。 i++ ) if ( NodeTable[i].data == vertex ) return i。 //釋放頂點(diǎn)表 } 鄰接表部分成員函數(shù)的實(shí)現(xiàn) template class Type int Graph Type :: GetVertexPos ( const Type vertex ) { //根據(jù)頂點(diǎn)名 vertex查找它在鄰接表中位置 for ( int i = 0。 p = NodeTable[i].adj。 while ( p != NULL ) { //逐條邊釋放 NodeTable[i].adj = plink。 i NumVertices。 InsertEdge ( k, j, weight )。 k = GetVertexPos ( tail )。 i e。 } cin e。 i++) //輸入各頂點(diǎn)信息 { cin name。 //輸入頂點(diǎn)個(gè)數(shù) for ( int i = 0。 NodeTable = //創(chuàng)建頂點(diǎn)表 new VertexType[MaxVertices]。 Type name, tail, head。 int GetNextNeighbor ( int v, int w )。 float GetWeight ( int v1, int v2 )。 void InsertEdge ( int v1, int v2, float weight )。 } void InsertVertex ( Type vertex )。 } int NumberOfVertices ( ) { return NumVertices。amp。 } int GraphFull ( ) const { return NumVertices == MaxVertices。 ~Graph ( )。 //當(dāng)前邊數(shù) int GetVertexPos ( const Type vertex )。 //當(dāng)前頂點(diǎn)個(gè)數(shù) int MaxVertices。 //邊鏈表頭指針 } template class Type class Graph { //圖類 private: VertexType * NodeTable。 NemeType data。 E ) const { return dest != 。 //邊上的權(quán)值 EdgeType * link。 int dest。 鄰接表表示的圖的類定義 define DefaultSize 10 template class Type class Graph。 ? 在鄰接表的邊鏈表中, 各個(gè)邊結(jié)點(diǎn)的鏈入順序任意,視邊結(jié)點(diǎn)輸入次序而定。 A B C D data adj A B C D 0 1 2 3 dest link dest link ? ? ? ? 1 3 0 2 1 0 ? 有向圖的鄰接表和逆鄰接表 A B C data adj A B C 0 1 2 dest link dest link ? 鄰接表 (出邊表 ) data adj A B C 0 1 2 dest link 逆鄰接表 (入邊表 ) 1 0 2 ? ? ? ? ? 0 1 1 ? 網(wǎng)絡(luò) (帶權(quán)圖 ) 的鄰接表 B A C D 6 9 5 2 8 data adj A B C D 0 1 2 3 dest cost link ? ? ? ? 1 5 3 6 2 8 3 2 1 9 (出邊表 ) (頂點(diǎn)表 ) ? 帶權(quán)圖的邊結(jié)點(diǎn)中保存該邊上的權(quán)值 cost。 } return 1。amp。 col = 。amp。 } template class Type int GraphType :: GetNextNeighbor ( int v, int w ) { //給出頂點(diǎn) v的某鄰接頂點(diǎn) w的下一個(gè)鄰接頂點(diǎn) int col。 Edge[v][col] MaxValue ) return col。 col++ ) if ( Edge[v][col] 0 amp。 } template class Type int Graph Type:: GetFirstNeighbor ( const int v ) { //給出頂點(diǎn)位置為 v 的第一個(gè)鄰接頂點(diǎn)的位置 if ( v != 1 ) { for ( int col = 0。 v2 != 1) return Edge[v1][v2]。 } template class Type folat GraphType :: GetWeight( int v1, int v2 ) { //給出以頂點(diǎn) v1 和 v2 為兩端點(diǎn)的邊上的權(quán)值 if (v1 != 1 amp。 j++ ) Edge[i][j] = 0。 i++ ) for ( int j = 0。 } 鄰接矩陣實(shí)現(xiàn)的部分圖操作 template class Type Graph Type :: Graph ( int sz ) { //構(gòu)造函數(shù) for ( int i = 0。 void RemoveVertex ( int v )。 void InsertVertex ( const Type vertex )。 int GetFirstNeighbor ( int v )。 i = ? [i] : NULL。 } Type GetValue ( int i ) { return i = 0 amp。 } int NumberOfVertices ( ) { return +1。 int GraphEmpty ( ) const { return ( )。 } int GetVertexPos ( int vertex ) { return FindVertex (VerticesList, vertex)。 L。 int CurrentEdges。 template class Type class Graph { private: SeqListType VerticesList (MaxVertices)。 網(wǎng)絡(luò)的鄰接矩陣 ???????????????????jiji,ji,jiji,ji,jijiji若或且若或且若,)(,)(),(]][[0EEEEWA . e d g e8 6 3 1 2 9 5 4 2 0 3 1 ???????????????068053290410A. e d g e用鄰接矩陣表示的圖的類定義 const int MaxEdges = 50。 0 1 2 3 ???????????0101101001011010A . e d g e0 1 2 ?????????000101010A . e d g e? 在有向圖中 , 統(tǒng)計(jì)第 i 行 1 的個(gè)數(shù)可得頂點(diǎn) i 的出度,統(tǒng)計(jì)第 j 行 1 的個(gè)數(shù)可得頂點(diǎn) j 的入度。 ? 設(shè)圖 A = (V, E)是一個(gè)有 n 個(gè)頂點(diǎn)的圖 , 圖的鄰接矩陣是一個(gè)二維數(shù)組 [n][n],定義: 鄰接矩陣 (Adjacency Matrix) ??? ??? , ),( , ,]][[ .否則或者如果01AEjiEjijiE d g e? 無向圖的鄰接矩陣是對(duì)稱的 。 int GetNextNeighbor ( int v1, int v2 )。 Type GetWeight ( int v1, int v2 )。 void RemoveEdge ( int v1, int v2 )。 void InsertEdge ( int v1, int v2, int weight )。 void InsertVertex ( Type amp。 ? 生成樹 一個(gè)連通圖的生成樹是其極小連通子圖,在 n個(gè)頂點(diǎn)的情形下,有 n1條邊。 ? 強(qiáng)連通圖與強(qiáng)連通分量 在有向圖中 , 若對(duì)于每一對(duì)頂點(diǎn) vi和 vj, 都存在一條從 vi到 vj和從 vj到 vi的路徑 , 則稱此圖是強(qiáng)連通圖。如果圖中任意一對(duì)頂點(diǎn)都是連通的 , 則稱此圖是連通圖。 ? 回路 若路徑上第一個(gè)頂點(diǎn) v1 與最后一個(gè)頂點(diǎn) vm 重合 , 則稱這樣的路徑為回路或環(huán)。帶權(quán)圖的路徑長(zhǎng)度是指路徑上各邊的權(quán)之和。它經(jīng)過的邊(vi, vp1)、 (vp1, vp2)、 ...、 (vpm, vj) 應(yīng)是屬于 E的邊。 ? 路徑 在圖 G= (V, E) 中 , 若從頂點(diǎn) vi 出發(fā) , 沿一些邊經(jīng)過一些頂點(diǎn) vp1, vp2, …, vpm,到達(dá)頂點(diǎn) vj。 ? 頂點(diǎn) v 的入度 是以 v 為終點(diǎn)的有向邊的條數(shù) , 記作 ID(v)。記作 TD(v)。這種帶權(quán)圖叫做網(wǎng)絡(luò)。若 V’? V 且 E‘?E, 則稱圖 G’ 是圖 G 的子圖。 0 0 0 0 1 1 1 1 2 2 2 2 6 5 4 3 3 ? 鄰接頂點(diǎn) 如果 (u, v) 是 E(G) 中的一條邊,則稱 u 與 v 互為鄰接頂點(diǎn) 。 ? 完全圖 若有 n 個(gè)頂點(diǎn)的無向圖有 n(n1)/2 條邊 , 則此圖為完全無向圖。 ? 有向圖與無向圖 在有向圖中,頂點(diǎn)對(duì) x, y 是有序的。 Path (x, y)} 是頂點(diǎn)之間關(guān)系的有窮集合,也叫做邊(edge)集合。? 圖的基本概念 ? 圖的存儲(chǔ)表示 ? 圖的遍歷與連通性 ? 最小生成樹 ? 最短路徑 ? 活動(dòng)網(wǎng)絡(luò) 圖的基本概念 ? 圖定義 圖是由頂點(diǎn)集合 (vertex)及頂點(diǎn)間的關(guān)系集合組成的一種數(shù)據(jù)結(jié)構(gòu) : Graph= ( V, E ) 其中 V = { x | x ? 某個(gè)數(shù)據(jù)對(duì)象 } 是頂點(diǎn)的有窮非空集合; E = {(x, y) | x, y ? V } 或 E = {x, y | x, y ? V amp。amp。 Path (x, y)表示從 x 到 y 的一條單向通路 , 它是有方向的。在無向圖中,頂點(diǎn)對(duì) (x, y)是無序的。有 n 個(gè)頂點(diǎn)的有向圖有 n(n1) 條邊 , 則此圖為完全有向圖。 ? 子圖 設(shè)有兩個(gè)圖 G= (V, E) 和 G‘= (V’, E‘)。 ? 權(quán) 某些圖的邊具有與它相關(guān)的數(shù) , 稱之為權(quán)。 0 1 2 3 子圖 0 1 3 0 1 2 3 0 2 3 ? 頂點(diǎn)的度 一個(gè)頂點(diǎn) v的度是與它相關(guān)聯(lián)的
點(diǎn)擊復(fù)制文檔內(nèi)容
職業(yè)教育相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1