この記事はWeChatの公開アカウント「3分でフロントエンドを学ぶ」から転載したもので、著者はsisterAnです。この記事を転載する場合は、「3分で学ぶフロントエンド」公式アカウントまでご連絡ください。 木の基礎については、こちらをご覧ください: 初心者のための木 バイナリ ツリーが与えられた場合、ツリー内の指定された 2 つのノードの最下位の共通祖先を見つけます。 Baidu 百科事典では、LCA を次のように定義しています。「ルート付きツリー T 内の 2 つのノード p と q の場合、LCA は、x が p と q の両方の祖先であり、x の深さが可能な限り大きいノード x です (ノードはそれ自身の祖先になることもできます)。」 たとえば、次の二分木があるとします: root = [3,5,1,6,2,0,8,null,null,7,4] 例1:
例2:
例:
答え: 再帰実装 解決: ツリーが空のツリーであるか、p または q のいずれかのノードがルート ノードである場合、p と q の最も近い共通ノードがルート ノードになります。 そうでない場合、つまりバイナリ ツリーが空のツリーではなく、p と q がルート以外のノードである場合は、左と右のサブツリーを再帰的にトラバースして、左と右のサブツリーの最も近い共通の祖先を取得します。
コード実装:
複雑性分析: 時間計算量: O(n) 空間計算量: O(n) |
Googleのプロモーションビデオは実は偽物だった?昨日Googleが公開したGeminiのプロモ...
1. 世界モデル「世界モデル」という用語は認知科学に由来しており、認知科学ではメンタルモデルと呼ばれ...
この記事は、Heart of Autonomous Driving の公開アカウントから許可を得て転...
健康診断のために病院に行くところを想像してください。診察室に入るとすぐに、看護師があなたの写真を撮り...
Meta Platforms は本日、Meta が社内開発した、200 言語のテキストを翻訳できる人...
テクノロジーは建設業界にかつてないほど大きな影響を与えています。クラウドベースのコラボレーションやデ...
2017年11月17日、中国情報産業発展センターの指導の下、中国ソフトウェア評価センターが主催し、...
[[426834]]国慶節のゴールデンウィークが近づいてきました。旅行の計画はお決まりですか?昨今...
[[227402]]人工知能が急成長を遂げている現在、AI人材の不足は中国だけでなく、世界全体が直...
Jupyter は、機械学習とデータサイエンスの分野でよく知られるようになりました。メモ、コード、...
[51CTO.com クイック翻訳] 機械学習を使用する開発者の間での議論のほとんどは、AI ベース...
人工知能 (AI) とモノのインターネット (IoT) はどちらも、私たちの周りの世界で注目を集め始...