이 글에서는 주로 PHP에서 이진 트리를 위에서 아래로 인쇄하는 방법을 소개하는데, PHP 이진 트리 순회와 관련된 조작 기술이 필요한 친구들은 참고할 수 있습니다.
이 글의 예에서는 바이너리 트리를 인쇄하는 방법을 설명합니다. PHP에서 위에서 아래로 트리. 참조를 위해 모든 사람과 공유하세요. 세부 사항은 다음과 같습니다.
Question
이진 트리의 각 노드를 위에서 아래로 인쇄하고, 같은 수준의 노드를 왼쪽에서 오른쪽으로 인쇄합니다.
해결 방법
트리의 각 레이어는 왼쪽에서 오른쪽으로 인쇄되므로 노드의 왼쪽 및 오른쪽 하위 트리를 저장해야 합니다. 선입선출이기 때문에 대기열을 사용합니다.
구현 코드
/*class TreeNode{ var $val; var $left = NULL; var $right = NULL; function __construct($val){ $this->val = $val; } }*/ function PrintFromTopToBottom($root) { $queueVal = array(); $queueNode = array(); if($root == NULL) return $queueVal; array_push($queueNode, $root); while(!empty($queueNode)){ $node = array_shift($queueNode); if($node->left != NULL) array_push($queueNode,$node->left); if($node->right != NULL) array_push($queueNode,$node->right); array_push($queueVal,$node->val); } return $queueVal; }
header_php를 통해 사용자 정의 데이터를 보내는 PHP 방법 팁
php에서는 ob_start( ) 출력을 지우려면 두 개의 정렬된 연결 목록을 PHP로 병합하는 방법
위 내용은 PHP에서 위에서 아래로 이진 트리를 인쇄하는 방법에 대한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!