五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

算法:序列化二叉樹

2022-09-28 15:17 作者:做架構(gòu)師不做框架師  | 我要投稿


請實現(xiàn)兩個函數(shù),分別用來序列化和反序列化二叉樹。


你需要設計一個算法來實現(xiàn)二叉樹的序列化與反序列化。這里不限定你的序列 / 反序列化算法執(zhí)行邏輯,你只需要保證一個二叉樹可以被序列化為一個字符串并且將這個字符串反序列化為原始的樹結(jié)構(gòu)。


示例

  • 輸入:root = [1,2,3,null,null,4,5]

  • 輸出:[1,2,3,null,null,4,5]


方法:層序遍歷BFS

序列化:

借助隊列,對二叉樹進行層序遍歷,而且為了表示二叉樹的完整性,我們也會把 null 節(jié)點也記錄下來。


代碼如下:

復雜度分析

  • 時間復雜度:O(N),N為二叉樹的節(jié)點數(shù)。

  • 空間復雜度:O(N) 。


反序列化:

序列化后的字符串為“[1,2,3,null,null,4,5,null,null,null,null]”,歸納整理為下表:

代碼如下:

復雜度分析

  • 時間復雜度:O(N) ,N 為二叉樹的節(jié)點數(shù)。

  • 空間復雜度: O(N) 。


END

勤奮是成功之母,懶惰乃萬惡之源,贈友人。

好兄弟可以點贊并關(guān)注我的公眾號“javaAnswer”,全部都是干貨。


算法:序列化二叉樹的評論 (共 條)

分享到微博請遵守國家法律
丰都县| 山西省| 许昌市| 开阳县| 义乌市| 开远市| 泸定县| 承德市| 行唐县| 壤塘县| 新邵县| 鹿泉市| 海林市| 夹江县| 凤山市| 永定县| 九寨沟县| 潼南县| 图们市| 田林县| 昌平区| 普陀区| 冷水江市| 额尔古纳市| 松江区| 深圳市| 温泉县| 三都| 任丘市| 翁牛特旗| 乐安县| 莱芜市| 仁怀市| 涿州市| 海阳市| 民和| 雷州市| 大宁县| 黄平县| 盘山县| 错那县|