/**
* 建立父節點樹形陣列
* 引數
* $ar 陣列,鄰接列表方式組織的資料
* $id 陣列中作為主鍵的下標或關聯鍵名
* $pid 陣列中作為父鍵的下標或關聯鍵名
* 返回 多維陣列
**/function
find_parent
($ar, $id='id', $pid='pid')
} return
$t;}
/** * 建立子節點樹形陣列
* 引數
* $ar 陣列,鄰接列表方式組織的資料
* $id 陣列中作為主鍵的下標或關聯鍵名
* $pid 陣列中作為父鍵的下標或關聯鍵名
* 返回 多維陣列
**/function
find_child
($ar, $id='id', $pid='pid')
} return
$t;}
$data = array(
array('id'=>1, 'parent'=>0, 'name'=>'祖父'),
array('id'=>2, 'parent'=>1, 'name'=>'父親'),
array('id'=>3, 'parent'=>1, 'name'=>'叔伯'),
array('id'=>4, 'parent'=>2, 'name'=>'自己'),
array('id'=>5, 'parent'=>4, 'name'=>'兒子'),
);$p = find_parent($data, 'id', 'parent');
$c = find_child($data, 'id', 'parent');
print_r ($c);
php 二叉樹演算法小解
前段時間出去面試,被問到如果從乙個陣列中快速找到某乙個元素在該陣列的位置。我當時大概想到他是想問我演算法,當時不是很清楚怎麼寫,就用說切割字串,用字串函式去找,當時想的是字串函式查詢起來挺方便的。面試官直接說。我給的陣列很小,如果很大怎麼辦。肯定不能用你這種方法,他說用二叉樹,面試完之後自己回去查了...
PHP構造二叉樹演算法示例
樹 tree 在資料結構還是很重要的,這裡表示二叉樹用括號表示法表示。先寫乙個二叉樹節點類 二叉樹節點 class btnode 然後構造二叉樹 程式設計客棧 function createbtnode root,string str else break 這裡寫上乙個列印二叉樹的函式 中序遍歷 f...
PHP演算法 遞迴演算法
遞迴函式在日常專案中有很廣泛的用途,例如寫樹結構 遍歷目錄等,今天我們用乙個簡單的遞迴demo來求斐波那契數列,並用 釋它執行的過程。0 1 1 2 3 5 8 13 21 34 function demo n elseif n 1 else return number echo demo 4 輸出...