今天的新的需求又來了赫舒,很基礎
給你一段數(shù)組羊娃,建一棵二叉樹
是不是很眼熟唐全?之前是不是有一段類似的需求?二叉樹還原蕊玷?但是很遺憾的告訴你邮利,這次的思路跟上次完全不一樣
上次的二叉樹之所以建的這么快,是因為有先序和中序遍歷的鋪墊集畅,所以直接根據(jù)數(shù)組寫就好了近弟,這次只給了一組數(shù)組,我們需要對整個數(shù)組依次進行遍歷處理挺智。所以這次的思路是啥祷愉?
首先,拿到根節(jié)點赦颇,因為最后要返回根節(jié)點二鳄,所以必須在循環(huán)外拿到它
然后用一個隊列進行處理,分為兩步走:
1.將隊列的元素出列
2.將新的元素入列
然后while(隊列 != 空)為止媒怯。
這次算法我的誤區(qū)就在于订讼,沒有想到將根元素先入隊列,我總是想著對根節(jié)點以外的數(shù)加入樹扇苞,但是因為根節(jié)點不能進循環(huán)欺殿,所以卡住了,現(xiàn)在通過一定的思考鳖敷,我已經(jīng)成功解決了需求脖苏,以下是代碼:
每天一個,提神醒腦定踱,明天見棍潘!