真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

java怎么實現(xiàn)從上往下打印二叉樹

這篇文章主要介紹“java怎么實現(xiàn)從上往下打印二叉樹”,在日常操作中,相信很多人在java怎么實現(xiàn)從上往下打印二叉樹問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”java怎么實現(xiàn)從上往下打印二叉樹”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

蘭溪ssl適用于網(wǎng)站、小程序/APP、API接口等需要進行數(shù)據(jù)傳輸應用場景,ssl證書未來市場廣闊!成為創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:13518219792(備注:SSL證書合作)期待與您的合作!

前言

從上往下打印二叉樹,這里會用到隊列,所以先講一下Java隊列。

隊列

創(chuàng)建隊列

Queue queue = new LinkedList();

添加元素

 queue.offer("a");

出隊列

//返回第一個元素,并在隊列中刪除
queue.poll()

//返回隊列頭部的元素,如果隊列為空,則拋出一個NoSuchElementException異常
queue.element()

//返回隊列頭部的元素, 如果隊列為空,則返回null
queue.peek()

主要可能就用到這幾個方法啦。下面來看題目

題目

從上往下打印出二叉樹的每個節(jié)點,同層節(jié)點從左至右打印。

分析

打印一顆二叉樹,如果直接遍歷打印的話,會先打印根節(jié)點->左節(jié)點->右節(jié)點。想要按層次打印,可以依照隊列來實現(xiàn),從根節(jié)點依次將節(jié)點加入隊列中,然后從隊列中取出來達到層次打印的目的。

解法

ArrayList list=new ArrayList<>();
       if(root==null){
           return list;
       }
       Queue queue=new LinkedList<>();
       queue.offer(root);
       while (!queue.isEmpty()){
           TreeNode temp=queue.poll();
           list.add(temp.val);
           if(temp.left!=null){
               queue.offer(temp.left);
           }
           if(temp.right!=null){
                queue.offer(temp.right);
           }
       }
       return list;

測試

main 方法

public static void main(String[] args) {
       TreeNode root =new TreeNode(1);
       root.left=new TreeNode(2);
       root.right=new TreeNode(3);
       root.left.left=new TreeNode(4);
       root.right.left=new TreeNode(5);
       root.left.left.left=new TreeNode(6);
       TreeOperation.show(root);
       Solution solution= new Solution();
       ArrayList list=solution.PrintFromTopToBottom(root);
       for(int i=0;i           System.out.print(list.get(i)+"\t");
       }
   }

java怎么實現(xiàn)從上往下打印二叉樹java怎么實現(xiàn)從上往下打印二叉樹

到此,關(guān)于“java怎么實現(xiàn)從上往下打印二叉樹”的學習就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關(guān)知識,請繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>
網(wǎng)站題目:java怎么實現(xiàn)從上往下打印二叉樹
文章分享:http://weahome.cn/article/jodgoo.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部