깊이 검색 귀속과 비귀속
- public int depth(BinaryTreeNode<T> root) {
- int heightleft;
- int heightright;
- if (root == null) {
- return 0;
- }
- heightleft = depth(root.left);
- heightright = depth(root.right);
- return (heightleft > heightright ? heightleft : heightright) + 1;
- }
-
- public int depth() {
- Stack<BinaryTreeNode<T>> stack = new Stack<BinaryTreeNode<T>>();
- if (root == null)
- return 0;
- stack.push(root);
- BinaryTreeNode<T> node = root;
- BinaryTreeNode<T> popednode = null;
- int height = 0;
- int maxheight = 1;
- System.out.println("===================start===================");
- while (!stack.isEmpty()) {
- if (node.left != null && node.left != popednode) {
- System.out.println(" ");
- stack.push(node.left);
- node = node.left;
- maxheight++;
- } else if (node.right != null && node.right != popednode) {
- System.out.println(" ");
- popednode = stack.pop();
- stack.push(node.right);
- node = node.right;
- maxheight++;
- } else {
- System.out.println(" ");
- popednode = stack.pop();
- if (!stack.isEmpty()) {
- node = stack.peek();
- } else {
- node = null;
- }
- if (maxheight > height) {
- height = maxheight;
- }
- maxheight--;
- }
- }
- return height;
- }
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
양식 제출 후 제출 버튼 비활성화텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.