六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

perl案例區分圖文說明教程之14

[摘要]十、用關聯數組創建數據結構   用關聯數組可以模擬在其它高級語言中常見的多種數據結構,本節講述如何用之實現:鏈表、結構和樹。 2、結構 許多編程語言可以定義結構(structure),即一組數據的集合。結構中的每個元素有其自己的名字,并通過該名字來訪問。 Perl不直接提供結構這種數據結構,但可以...
十、用關聯數組創建數據結構

  用關聯數組可以模擬在其它高級語言中常見的多種數據結構,本節講述如何用之實現:鏈表、結構和樹。

2、結構

許多編程語言可以定義結構(structure),即一組數據的集合。結構中的每個元素有其自己的名字,并通過該名字來訪問。
Perl不直接提供結構這種數據結構,但可以用關聯數組來模擬。例如模擬C語言中如下的結構:

struce{
int field1;
int field2;
int field3; }mystructvar;

我們要做的是定義一個含有三個元素的關聯數組,下標分別為field1、field2、field3,如:

%mystructvar = ("field1" , "" ,
"field2" , "" ,
"field3" , "" ,);

像上面C語言的定義一樣,這個關聯數組%mystrctvar有三個元素,下標分別為field1、field2、field3,各元素初始值均為空串。對各元素的訪問和賦值通過指定下標來進行,如:
$mystructvar{"field1"} = 17;

3、樹

另一個經常使用的數據結構是樹。樹與鏈表類似,但每個節點指向的元素多于一個。最簡單的樹是二叉樹,每個節點指向另外兩個元素,稱為左子節點和右子節點(或稱孩子),每個子節點又指向兩個孫子節點,依此類推。
注:此處所說的樹像上述鏈表一樣是單向的,每個節點指向其子節點,但子節點并不指向父節點。
樹的概念可以如下描述:

因為每個子節點均為一個樹,所以左/右子節點也稱為左/右子樹。(有時稱左/右分支)
第一個節點(不是任何節點的子節點的節點)稱為樹的根。
沒有孩子(子節點)的節點稱為葉節點。
有多種使用關聯數組實現樹結構的方法,最好的一種應該是:給子節點分別加上left和right以訪問之。例如,alphaleft和alpharight指向alpha的左右子節點。下面是用此方法創建二叉樹并遍歷的例程:

1 : #!/usr/local/bin/perl
2 :
3 : $rootname = "parent";
4 : %tree = ("parentleft", "child1",
5 : "parentright", "child2",
6 : "child1left", "grandchild1",
7 : "child1right", "grandchild2",
8 : "child2left", "grandchild3",
9 : "child2right", "grandchild4");
10: # traverse tree, printing its elements
11: &print_tree($rootname);
12:
13: sub print_tree {
14: local ($nodename) = @_;
15: local ($leftchildname, $rightchildname);
16:
17: $leftchildname = $nodename . "left";
18: $rightchildname = $nodename . "right";
19: if ($tree{$leftchildname} ne "") {
20: &print_tree($tree{$leftchildname});
21: }
22: print ("$nodenamen");
23: if ($tree{$rightchildname} ne "") {
24: &print_tree($tree{$rightchildname});
25: }
26: }

結果輸出如下:

grandchild1
child1
grandchild2
parent
grandchild3
child2
grandchild4





主站蜘蛛池模板: 色播丁香 | 日本久久久久久久久久 | 无声在线完整版免费观看 | 色免费网站 | 色狠狠xx| 日日天天夜夜 | 日本精品欧洲www | 亚洲h视频| 午夜免费视频 | 五月婷婷 六月丁香 | 五月婷婷深爱 | 一级淫 | 欧美一区二区三区大片 | 日韩成人中文字幕 | 殴美在线| 欧美一级大片免费看 | 手机看片福利日韩国产 | 亚洲成人7777| 午夜视频免费在线 | 日本一本高清 | 中文字幕第一页亚洲 | 日韩午夜免费 | 四虎综合| 射久久久 | 亚洲精品国产福利在线观看 | 亚洲综合网在线观看 | 亚洲第一区精品日韩在线播放 | 日本www色视频成人免费免费 | 色橹橹欧美在线观看视频高清 | 欧美做a一级视频免费观看 欧美坐爱视频 | 日本一区二区在线不卡 | 天堂最新版资源www在线 | 欧美一级看片a免费观看 | 热の综合热の国产热の潮小说 | 中文字幕在线有码高清视频 | 色综网| 天天草综合网 | 亚洲国产成人久久午夜 | 色视在线 | 武则天一级淫片免费看 | 婷婷五色 |