位元組跳動面試題 求一顆二叉樹所有子節點的父節點之和

2021-10-03 01:25:39 字數 821 閱讀 5305

有幸收到了位元組跳動的實習生面試,雖然沒有通過,但是作為第一場面試,我還是能總結出很多經驗,對我以後的面試我相信會有很大的幫助。

面試官給的第一道面試題,就是求一顆二叉樹的所有子節點的父節點之和

面試的時候沒做出來,我當時已經知道我涼了,所有首先你的資料結構演算法知識一定要過關

思路:深度優先探索,然後判斷當前節點的左孩子和右孩子其中乙個為null,累加

判斷當前節點的孩子指向的左右孩子為null,累加。

class soltion()

treenode* left = sumfather(root->leftchild);

treenode* right = sumfather(root->rightchild);

if(left != null && left->leftchild == null && left->rightchild == null

|| right != null&&right->leftchild == null&&right->rightchild == null)

return sum;}};

寫到這裡就差不多吧基本思路寫出來了,這是我目前能想到的最簡單的思路了,現在想想面試的時候面試官看我沒有寫出來這個**,就降低了難度,問我所有子節點的和,其實思路和這個差不多,也是遞迴遍歷左右節點,然後判斷左右節點的左右孩子是否為空,然後累加,面試官也是在引導我的思路,可惜呀。

二叉樹面試題(二) 求一顆二叉樹的映象

一 二叉樹的映象就是乙個樹在鏡子裡的成像 好吧!初中的物理知識來了,哈哈,其實很簡單,採用遞迴的方法求二叉樹的映象 1 如果樹為空,直接返回null 2 如果樹不為空,求其左子樹和右子樹的映象,遞迴完成後,將左子樹的映象放在根結點的右邊,將右子樹的映象放在根結點的左邊 二 圖說 三 實現 inclu...

程式設計練習之一顆二叉樹包含另一顆二叉樹

劍指offer上的一道程式設計練習,如何確定二叉樹a包含一棵相對小一點的二叉樹b?思路 用兩個函式實現,第乙個首先判斷根結點是否相等,第二個函式繼續判斷子結構是否相等 函式一 第一步,首先從根結點入手,判斷proota的值是否與prootb的根結點的值是否相等。若相等,則在比較a樹的子結構是否包含b...

求任意一顆二叉樹的繁茂度

在 資料結構 嚴蔚敏版上的習題看到這個問題。繁茂度的定義 各層節點數的最大值與樹的高度的乘積 樹的深度好求,遞迴呼叫就行了。關鍵在於如何求出各層的最大節點樹?下面是我的一種實現方法 bitree.h include include include include using namespace st...