이번에는 PHP에서 위에서 아래로 이진 트리를 인쇄하는 코드를 공유하겠습니다. PHP에서 위에서 아래로 이진 트리를 인쇄할 때 주의사항은 무엇인가요? .
Question
이진 트리의 각 노드를 위에서 아래로 인쇄하고, 같은 수준의 노드를 왼쪽에서 오른쪽으로 인쇄합니다.
해결책
트리의 각 레이어는 왼쪽에서 오른쪽으로 인쇄되므로 노드의 왼쪽 및 오른쪽 하위 트리를 저장해야 합니다. 선입선출 방식이므로 queue를 사용합니다.
구현 코드
/*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; }
이 기사의 사례를 읽으신 후 방법을 마스터하셨다고 믿습니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트의 다른 관련 기사를 주목하세요!
추천 도서:
tp5 (thinkPHP5) mongoDB 데이터베이스 작동 단계에 대한 자세한 설명
php mongoDB 싱글톤 모드 작업 클래스 구현 단계에 대한 자세한 설명
위 내용은 PHP는 위에서 아래로 코드 공유를 인쇄하는 이진 트리를 실현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!