二叉樹返回前序鍊錶,遍歷思想和彙總思想求總結點個數

2021-09-27 13:47:07 字數 856 閱讀 2744

//返回前序鍊錶

public static listpreorder(node root)

//跟+左子樹+右子樹;

listlist=new linkedlist<>();

listleftpreorder=preorder(root.left);

listrightpreorder=preorder(root.right);

list.add(root.value);

list.addall(leftpreorder);

list.addall(rightpreorder);

return list;

}//遍歷思想:設定乙個變數跟隨著呼叫去++

//彙總思想:總的=跟結點+左子樹+右子樹

//遍歷思想,求總結點個數

public static void calccount1(node root)

//結點不為空,就++一次

count++;

calccount1(root.left);

calccount1(root.right);

}//彙總思想,求總結點個數

//判斷根節點,去找它的左子樹總結點個數,去找它的右子樹總結結點個數

static int count=0;

public static int calccount2(node root)

int left=calccount2(root.left);

int right=calccount2(root.right);

int count=1+left+right;

return count;

}

二叉樹遍歷思想 一 前序遍歷

二叉樹遞迴定義 1 空節點 null 為二叉樹 2 二叉樹的左子樹為二叉樹,二叉樹的右子樹為二叉樹。二叉樹的前序遍歷遞迴定義 1 當前節點為空 null 直接返回 2 對於非空節點 i 操作當前節點 ii 前序遍歷左子樹 iii 前序遍歷右子樹 二叉樹的非遞迴遍歷方法 使用棧來進行遍歷。策略簡述 利...

前序遍歷二叉樹

題目 給定乙個二叉樹,返回它的 前序 遍歷。示例 輸入 1,null,2,3 輸出 1,2,3 方法一 遞迴 這是最容易想到且最容易實現的演算法。definition for a binary tree node.struct treenode treenode int x val x left n...

二叉樹的前序遍歷

二叉樹的前序遍歷 public class tree 建立二叉樹,返回根結點 param return public static tree createtree int else else else else return root 前序遍歷 param tree public static vo...