十字鍊錶(Orthogonal List)

2021-10-02 09:53:58 字數 1211 閱讀 3829

十字鍊錶的特點

1、可以看成有向圖將鄰接表和逆鄰接表結合,每個結點有兩個指標域,分別指向入度邊鍊錶和出度邊鍊錶

2、時間複雜度與鄰接表相同

3、容易計算頂點的度

十字鍊錶的屬性

public

static

final

int max_vexnum_num =20;

// 最大頂點數

public

static

final

int inf =

32768

;// 表示無窮大

public

static

int vexnum;

// 頂點個數

public

static

int arcnum;

// 邊個數

public

static vexnode[

] vexs;

// 頂點集合

class

vexnode

class

arcnode

建立乙個有向圖

// 建立乙個有向圖

public

void

createorlist()

// 初始化邊集合

for(

int i =

0; i < arcnum; i++

)}

列印十字鍊錶的出度鍊錶和入度鍊錶

// 列印orlist

public

void

display_out()

system.out.

println()

;}}public

void

display_in()

system.out.

println()

;}}

定位v0在集合中的位置

// 定位v0在集合中的位置

public

intlocate

(string v0)

}return-1

;}

十字鍊錶(Java)

對於有向圖來說,鄰接表是有缺陷的。關心了出度問題,想要了解入度情況就必須要遍歷整個圖才能知道。反之也一樣。那麼,這一節就介紹有向圖的一種儲存方法,它能將鄰接表和逆鄰接表結合起來 十字鍊錶。定義頂點表結點結構 vertex firstin firstout 其中,firstin表示入邊表頭指標,指向該...

十字鍊錶 Working routine

工作使艾奇快樂。勤奮的工作為國家直接貢獻了gdp,艾奇認為只要對國家有利,即使犧牲自己生命也心甘情願,絕不會因為自己可能受到禍害而躲開。當艾奇無聊的時候,她就會去工作,然而並不是每次工作都是輕鬆而愉悅的。當天艾奇又一次來到了學校,等待著她的是乙個有n 行m 列的巨大的矩陣和q個任務。對於每個任務,艾...

鄰接表 十字鍊錶

每一行都可以看成乙個單鏈表,第一行中,v0 1 3可以得到,v0的出度為v1和v3。鄰接表完整 include using namespace std const int max v 15 邊節點 typedef struct edge node enode,penode 表節點 typedef s...