<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      劍指offer-18、?叉樹的鏡像

      題?描述

      操作給定的?叉樹,將其變換為源?叉樹的鏡像。

      ?叉樹的鏡像定義:源?叉樹

      思路及解答

      遞歸

      采用后序遍歷(左-右-根)的方式遞歸訪問每個節點:

      1. 遞歸處理左子樹
      2. 遞歸處理右子樹
      3. 訪問根節點并交換其左右子樹
      public TreeNode mirrorTree(TreeNode root) {
          if (root == null) return null;
          // 先遞歸處理子樹
          TreeNode left = mirrorTree(root.left);
          TreeNode right = mirrorTree(root.right);
          // 再交換左右子樹
          root.left = right;
          root.right = left;
          return root;
      }
      

      或者采用前序遍歷(根-左-右)的方式遞歸訪問每個節點:

      1. 訪問根節點并交換其左右子樹
      2. 遞歸處理左子樹
      3. 遞歸處理右子樹
      public TreeNode mirrorTree(TreeNode root) {
          if (root == null) {
              return null;
          }
          // 交換左右子樹
          TreeNode temp = root.left;
          root.left = root.right;
          root.right = temp;
          // 遞歸處理左右子樹
          mirrorTree(root.left);
          mirrorTree(root.right);
          return root;
      }
      
      • ?時間復雜度?:O(n),每個節點只被訪問一次
      • ?空間復雜度?:O(h),h為樹的高度,遞歸棧空間消耗

      迭代

      利用隊列實現廣度優先搜索(BFS):

      1. 將根節點加入隊列
      2. 取出隊首節點并交換其左右子樹
      3. 將非空的左右子節點加入隊列
      4. 重復直到隊列為空
      public TreeNode mirrorTree(TreeNode root) {
          if (root == null) return null;
          Queue<TreeNode> queue = new LinkedList<>();
          queue.offer(root);
          while (!queue.isEmpty()) {
              TreeNode node = queue.poll();
              // 交換左右子樹
              swap(node);
              // 將子節點加入隊列
              if (node.left != null) queue.offer(node.left);
              if (node.right != null) queue.offer(node.right);
          }
          return root;
      }
      
      public void swap(TreeNode root) {
          TreeNode temp = root.left;
          root.left = root.right;
          root.right = temp;
      }
      
      • 時間復雜度?:O(n)
      • ?空間復雜度?:O(n),最壞情況下需要存儲所有節點
      posted @ 2025-08-05 09:00  程序員Seven  閱讀(49)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 精品无码一区在线观看| 奇米四色7777中文字幕| 免费无遮挡无码永久在线观看视频| 国产精品一区二区三区激情| 狠狠躁夜夜躁人人爽天天5| 中文有无人妻vs无码人妻激烈| 亚洲丰满熟女一区二区蜜桃 | 成人网站免费观看永久视频下载| 亚洲一区二区av观看| 99精品国产丝袜在线拍国语| 中文字幕人妻有码久视频| 国产亚洲av人片在线播放| 国产成人片无码视频| 秋霞电影院午夜无码免费视频| 亚洲成人av在线高清| 白白发布视频一区二区视频| 久久av无码精品人妻出轨| 亚洲欧洲色图片网站| av无码精品一区二区乱子| 日本中文一二区有码在线 | 天堂mv在线mv免费mv香蕉| 国内自拍视频一区二区三区| 凸凹人妻人人澡人人添| 超碰人人超碰人人| 欧美成人h精品网站| 蜜臀av色欲a片无人一区| 国产愉拍91九色国产愉拍| 亚洲国产精品一区二区第一页| 久久精品国产亚洲精品2020| 亚洲av产在线精品亚洲第一站| 亚洲爆乳WWW无码专区| 应城市| 久热色精品在线观看视频| 国产无遮挡又黄又爽又色| 一区二区亚洲人妻av| 国产二区三区视频在线| 亚洲欧洲日产国无高清码图片| 日本一区二区久久人妻高清| 少妇高潮太爽了在线视频| 亚洲欧洲无码av电影在线观看 | 色欲色香天天天综合网站免费|