手机版

PHP完全二叉树定义与实现方法示例

时间:2021-09-03 来源:互联网 编辑:宝哥软件园 浏览:

本文实例讲述了服务器端编程语言(专业超文本预处理器的缩写)完全二叉树定义与实现方法。分享给大家供大家参考,具体如下:

若设二叉树的深度为h,除第h层外,其它各层(1~h-1)的结点数都达到最大个数,第h层所有的结点都连续集中在最左边,这就是完全二叉树。

服务器端编程语言(专业超文本预处理器的缩写)代码实现(暂时实现添加节点、层次遍历节点,删除节点后续更新)

?phpclass Node { public $ value public $ left Node public $ right Node }/*找到空节点*/function findEmpytNode($node,$ parent=null){ if(empty($ node-value)){ return $ node;} else { if(empty($ node-left node-value)){ return $ node-left node;}else if(空($ node-right node-value)){ return $ node-right node;} else { if(empty($ parent)| | $ node-value==$ parent-right node-value){ return find empytnode($ node-left node,$ node);} else { return findEmpytNode($ parent-right node,$ node);} } }}/* 添加节点*/function addNode($node,$ value){ $ emptyNode=findEmpytNode($ node);setNode($emptyNode,$ value);}/* 设置节点*/function setNode($node,$ value){ $ node-value=$ value;$ Node-left Node=new Node();$ Node-right Node=new Node();}/* 打印*/function printree($ node,$ parent=null){ if(empty($ node-value))返回;echo $ node-左节点-value;echo $ node-right节点-value;如果(空($ parent)| | $ node-value==$ parent-right node-value){ printree($ node-left node,$ node);} else { printree($ parent-right node,$ node);} } $ head=new Node();setNode($head,1);addNode($head,2);addNode($head,3);addNode($head,4);addNode($head,5);addNode($head,6);printree($ head);更多关于服务器端编程语言(专业超文本预处理器的缩写)相关内容感兴趣的读者可查看本站专题: 《PHP数据结构与算法教程》 、 《PHP基本语法入门教程》 、 《php面向对象程序设计入门教程》 、 《php字符串(string)用法总结》 、 《php+mysql数据库操作入门教程》 及《php常见数据库操作技巧汇总》

希望本文所述对大家服务器端编程语言(专业超文本预处理器的缩写)程序设计有所帮助。

版权声明:PHP完全二叉树定义与实现方法示例是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。