Leetcode刷題營第三十三題:對稱二叉樹

101. 對稱二叉樹

給你一個二叉樹的根節點?root?, 檢查它是否軸對稱。

示例 1:

輸入:root = [1,2,2,3,4,4,3]
輸出:true

示例 2:

輸入:root = [1,2,2,null,3,null,3]
輸出:false
提示:
  • 樹中節點數目在范圍?[1, 1000]?內
  • -100 <= Node.val <= 100

算法思路:利用遞歸遍歷分別判斷左右子樹對稱節點利用判斷兩樹相同的思想。

判斷兩樹對稱:這里我們輸入的分別是左右子樹的根節點,然后一個從左節點開始遍歷,另外一個從右節點開始遍歷即可

代碼實現:

bool ismirrortree(struct TreeNode* p,struct TreeNode* q){if(p == NULL && q == NULL){return true;}if(!p || !q || p->val != q->val){return false;}return ismirrortree(p->left,q->right) && ismirrortree(p->right,q->left);
}bool isSymmetric(struct TreeNode* root) {if(!root){return true;}return ismirrortree(root->left,root->right);
}

這道題利用前面我們做過的題目的思想,有時候它只給了一個接口,但并不意味著你不可以在該接口中調用其他接口。

好了,本期的內容就分享到這里了,謝謝大家的點贊和收藏!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/91751.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/91751.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/91751.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

day055-Dockerfile與常用指令

文章目錄0. 老男孩思想-女性的第一需求1. Dockerfile1.1 Dockerfile的基本結構1.2 案例-制作小鳥飛飛鏡像1.2.1 編寫Dockerfile文件1.2.2 構建鏡像1.2.3 啟動容器1.3 Dockerfile常用指令1.4 面試題&#xff1a;Dockerfile中CMD和ENTRYPOINT的區別&#xff1f;1.5 案例-制作zrlo…

Spring Boot 應用優雅停機與資源清理:深入理解關閉鉤子

在開發和部署 Spring Boot 應用程序時&#xff0c;除了關注其啟動和運行&#xff0c;理解如何實現**優雅停機&#xff08;Graceful Shutdown&#xff09;**也同樣至關重要。優雅停機意味著在應用程序關閉時&#xff0c;能夠有序地釋放資源、完成正在進行的任務&#xff0c;并避…

淘寶扭蛋機小程序開發:重構電商娛樂化體驗的新范式

在電商行業同質化競爭加劇的當下&#xff0c;消費者對購物體驗的期待已從“功能滿足”轉向“情感共鳴”。淘寶扭蛋機小程序憑借“盲盒式隨機獎勵游戲化交互”的創新模式&#xff0c;成為撬動年輕用戶消費力的新支點。其開發邏輯不僅是對傳統電商的升級&#xff0c;更是對“娛樂…

YOLO演變史(一)

在YOLOV1發布后&#xff0c;作者并沒有滿足于此&#xff0c;而是持續對YOLO進行了改進。 YOLOV2&#xff1a;Better, Faster, Stronger YOLOv2&#xff08;又稱YOLO9000&#xff09;發表于2017年CVPR&#xff0c;是YOLO系列的第二代版本。其論文標題“Better, Faster, Stronger…

專題:2025智能體研究報告|附70份報告PDF、原數據表匯總下載

原文鏈接&#xff1a;https://tecdat.cn/?p43035 智能體正在改寫商業規則&#xff1a;某城商行的智能客服用公有云部署&#xff0c;把單筆交互成本從5.7元砍到1.2元&#xff0c;投訴率直降42%&#xff08;《賽迪智庫&#xff1a;2025全球智能體進展報告》P24&#xff09;&…

Axios 完整功能介紹和完整示例演示

Axios 是一個基于 Promise 的現代化 HTTP 客戶端庫&#xff0c;用于瀏覽器和 Node.js 環境。它提供了簡潔的 API 和強大的功能&#xff0c;是前端開發中最常用的網絡請求工具之一。核心功能 瀏覽器 & Node.js 雙平臺支持 瀏覽器中使用 XMLHttpRequestNode.js 中使用 http 模…

math.h函數

math.c函數作用 1. 基本三角函數&#xff08;參數為弧度&#xff09; sin(double x)&#xff1a;計算正弦值。cos(double x)&#xff1a;計算余弦值。tan(double x)&#xff1a;計算正切值。asin(double x)&#xff1a;反正弦&#xff08;返回值范圍&#xff1a;[-π/2, π/2]&…

在Next.js里玩轉pdf預覽

1.背景在項目開發中&#xff0c;pdf預覽是一個很常見的業務。各大公司為了保護自己的知識產權&#xff0c;也會對pdf預覽進行限制&#xff0c;比如&#xff1a;不允許下載、打印&#xff0c;不允許提取文字等等。要想在實現預覽功能的基礎上還要附加這些限制&#xff0c;有很多…

算法競賽備賽——【圖論】求最短路徑——Floyd算法

floyd算法 基于動態規劃 應用&#xff1a;求多源最短路 時間復雜度&#xff1a;n^3 dijkstra&#xff1a;不能解決負邊權 floyd&#xff1a;能解決負邊權 不能解決負邊權回路問題 求最短路徑&#xff1a;dijkstra bfs floyd 思路 1.讓任意兩點之間的距離變短&#xff1a;引入…

雙指針(滑動窗口)相關算法題

雙指針算法有時候也叫尺取法或者滑動窗口&#xff0c;是?種優化暴力枚舉策略的手段&#xff1a;當我們發現在兩層 for 循環的暴力枚舉過程中&#xff0c;兩個指針是可以不回退的&#xff0c;此時我們就可以利用兩個指針不回退的性質來優化時間復雜度。因為雙指針算法中&#x…

ScratchCard刮刮卡交互元素的實現

效果展示 刮刮卡是?種常見的網頁交互元素&#xff0c;通過模擬物理世界的刮涂層來揭示下方的內容。這種效果主要依賴于HTML5的 元素來實現。以下是?個基于TypeScript的刮刮卡實現示例&#xff0c;包括配置項、初始化方法和核心的刮開邏輯。下面是展示的效果部分刮開效果&…

【Python LeetCode 專題】熱題 100,重在思路

哈希1. 兩數之和49. 字母異位詞分組128. 最長連續序列雙指針283. 移動零11. 盛最多水的容器15. 三數之和42. 接雨水滑動窗口3. 無重復字符的最長子串438. 找到字符串中所有字母異位詞子串560. 和為 K 的子數組239. 滑動窗口最大值普通數組53. 最大子數組和56. 合并區間189. 輪轉…

openEuler 22.03 LTS Rootless Docker 安裝指南

openEuler 22.03 LTS Rootless Docker 安裝指南 1.創建普通用戶&#xff08;用于無根模式&#xff09; sudo useradd -m docker-user sudo passwd docker-user # 設置密碼 sudo usermod --add-subuids 100000-165535 docker-user sudo usermod --add-subgids 100000-165535 do…

CMake指令:常見內置命令行工具( CMake -E )

目錄 1.簡介 2.核心作用 3.常用命令介紹 3.1.文件操作命令 3.2.系統命令執行 3.3.校驗與哈希 3.4.流程控制與等待 3.5.路徑與文件處理 3.6.歸檔與壓縮 3.7.網絡與下載 3.8.實用工具 4.使用示例 5.與 shell 命令的對比 6.在 CMake 腳本中使用 7.總結 相關鏈接 1…

YOLO融合CAF-YOLO中的ACFM模塊

YOLOv11v10v8使用教程&#xff1a; YOLOv11入門到入土使用教程 YOLOv11改進匯總貼&#xff1a;YOLOv11及自研模型更新匯總 《CAF-YOLO: A Robust Framework for Multi-Scale Lesion Detection in Biomedical Imagery》 一、 模塊介紹 論文鏈接&#xff1a;https://arxiv.org…

Webpack 項目構建優化詳解

1. 相關面試題 1.1. 做過哪些Webpack打包構建優化? 代碼分割:使用 Webpack 的 SplitChunksPlugin 進行代碼分割,將第三方庫、公共代碼與業務代碼分離,提高緩存利用率和加載速度。 Tree Shaking:通過配置 mode: production 或使用 TerserPlugin,移除未引用的代碼,減少…

【深度學習基礎】張量與Tensor的區別?從標量到深度學習的多維世界

目錄引言一、張量&#xff08;Tensor&#xff09;的定義與特性1. 數學中的張量2. 深度學習中的Tensor二、標量&#xff08;Scalar&#xff09;是什么&#xff1f;三、深度學習中的其他核心量1. 向量&#xff08;Vector&#xff09;2. 矩陣&#xff08;Matrix&#xff09;3. 高階…

設計模式一: 模板方法模式 (Template Method Pattern)

模板方法模式是一種行為設計模式&#xff0c;它通過定義一個算法的骨架&#xff0c;而將一些步驟延遲到子類中實現。Template Method 使得子類可以不改變&#xff08;復用&#xff09;一個算法結構 即可重定義&#xff08;override 重寫&#xff09;該算法的某些特定步驟。基本…

Linux驅動學習day24(UART子系統)

一、UART硬件理論1.1 作用及功能UART&#xff1a;通用異步收發傳輸器&#xff0c;簡稱串口。功能&#xff1a;移植u-boot、內核時&#xff0c;主要使用串口查看打印信息。外接各種模塊&#xff0c;比如藍牙GPS模塊。使用UART的時候&#xff0c;要注意1. 波特率 2. 格式&#xf…

NFS共享服務器

目錄 任務要求 思路總結 1.NFS共享服務 服務端 (ip 192.168.48.128) 客戶端 (ip 192.168.48.130) 2.配置autofs自動掛載 任務要求 1.NFS服務器,可以讓PC將網絡中的NFS服務器共享的目錄掛載到本地端的文件系統中,而在本地端的系統中看來&#xff0c;那個遠程主機的目…