本書提供用J B u i l d e r開發數據庫應用程序、創建分布式應用程序以及編寫J a v a B e a n
組件的高級資料。它包括下列幾個部分:
• 第一部分是“開發數據庫應用程序”,它提供關于使用J b u i l d e r的D a t a E x p r e s s數據
庫體系結構的信息,并解釋原始數據組件和類之間的相互關系,以及怎樣使用它
們來創建你的數據庫應用程序。它還解釋怎樣使用Data Modeler(數據模型器)和
Application Generator(應用程序生成器)創建數據驅動的客戶機/服務器應用程
序。
• 第二部分是“開發分布式應用程序”,它提供關于使用ORB Explorer、用J B u i l d e r
創建多級的分布應用程序、調試分布式應用程序、用J a v a定義C O R B A接口以及
使用s e r v l e t等的信息。
• 第三部分是“創建J a v a B e a n”,它解釋怎樣開發新的J a v a B e a n組件,描述在組件
開發中涉及的任務, 怎樣使用B e a n s E x p r e s s創建新的J a v a B e a n,以及關于屬性、
事件、B e a nIn f o類和其他方面的詳細情況。
Floyd-Warshall算法描述
1)適用范圍:
a)APSP(All Pairs Shortest Paths)
b)稠密圖效果最佳
c)邊權可正可負
2)算法描述:
a)初始化:dis[u,v]=w[u,v]
b)For k:=1 to n
For i:=1 to n
For j:=1 to n
If dis[i,j]>dis[i,k]+dis[k,j] Then
Dis[I,j]:=dis[I,k]+dis[k,j]
c)算法結束:dis即為所有點對的最短路徑矩陣
3)算法小結:此算法簡單有效,由于三重循環結構緊湊,對于稠密圖,效率要高于執行|V|次Dijkstra算法。時間復雜度O(n^3)。
考慮下列變形:如(I,j)∈E則dis[I,j]初始為1,else初始為0,這樣的Floyd算法最后的最短路徑矩陣即成為一個判斷I,j是否有通路的矩陣。更簡單的,我們可以把dis設成boolean類型,則每次可以用“dis[I,j]:=dis[I,j]or(dis[I,k]and dis[k,j])”來代替算法描述中的藍色部分,可以更直觀地得到I,j的連通情況。