您好,登錄后才能下訂單哦!
本篇文章為大家展示了翻轉python二叉樹是怎樣進行,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
翻轉一棵二叉樹。
示例:
輸入:
4 / \ 2 7 / \ / \ 1 3 6 9
輸出:
4 / \ 7 2 / \ / \ 9 6 3 1
上期的問題是:160,用隊列實現棧
1class MyStack {
2 private Queue<Integer> que;
3
4 public MyStack() {
5 que = new LinkedList<>();
6 }
7
8 public void push(int x) {
9 que.offer(x);
10 for (int i = 0; i < que.size() - 1; ++i) {
11 que.offer(que.poll());
12 }
13 }
14
15 public int pop() {
16 return que.poll();
17 }
18
19 public int top() {
20 return que.peek();
21 }
22
23 public boolean empty() {
24 return que.isEmpty();
25 }
26}
offer方法會把x存放到que的最后。因為隊列是先進先出,棧是先進后出,所以這里push的時候會先把x存放到隊列的最后,然后再把前面的一一出隊然后再重新加入到隊列中。
上述內容就是翻轉python二叉樹是怎樣進行,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。