JZ043往完全二叉樹新增節點

2022-10-11 00:30:12 字數 718 閱讀 5396

title: 往完全二叉樹新增節點

方法一:空間換時間的思想,採用層次遍歷,遍歷到第乙個可插入 節點的 父節點,證明後續的節點都是可以作為父節點插入資料的,儲存在佇列中,如圖:

節點3就是可插入資料的第乙個節點,節點6就是可插入資料的第二個節點;

class cbtinserter 

_addpos.pop();//彈出不可插入的節點

}if (last == true) break;}}

int insert(int v)

//如果右邊為空的話,證明這個節點已經無效了

else if (cur->right == nullptr)

_addpos.push(tmp);

return cur->val;

}treenode* get_root()

private:

treenode *_root;

queue_addpos;

};

------------恢復內容結束------------

二叉樹 完全二叉樹的節點數

給定一棵完全二叉樹 最後一層所有節點都在最左側,其餘所有層節點數都為2 h 求其節點數。最簡單的方法就是遍歷一遍,把節點數加起來,但時間複雜度太高。以最左邊的路徑長作為二叉樹的高度,對於乙個節點,如果左子樹高度和右子樹高度一樣,說明左子樹為滿二叉樹,此時把其左子樹的節點數計算出來,加入總數,對右子樹...

完全二叉樹求節點數

如上所示,由正整數1,2,3 組成了一顆特殊二叉樹。我們已知這個二叉樹的最後乙個結點是n。現在的問題是,結點m所在的子樹中一共包括多少個結點。比如,n 12,m 3那麼上圖中的結點13,14,15以及後面的結點都是不存在的,結點m所在子樹中包括的結點有3,6,7,12,因此結點m的所在子樹中共有4個...

二叉樹,完全二叉樹,滿二叉樹

二叉樹 是n n 0 個結點的有限集合,它或者是空樹 n 0 或者是由乙個根結點及兩顆互不相交的 分別稱為左子樹和右子樹的二叉樹所組成。滿二叉樹 一顆深度為k且有2 k 1個結點的二叉樹稱為滿二叉樹。說明 除葉子結點外的所有結點均有兩個子結點。所有葉子結點必須在同一層上。完全二叉樹 若設二叉樹的深度...