En İyi 150 RöportajKolay

BST'nin En Düşük Ortak Atası

'BST'nin En Küçük Ortak Atası' sorunu için ayrıntılı kılavuz ve Python uygulaması.

Sorun Bildirimi

Kolay

Bir ikili arama ağacı (BST) verildiğinde, BST'deki belirli iki düğümün en düşük ortak ata (LCA) düğümünü bulun.

LCA'nın tanımına göre: "En düşük ortak ata, p ve q adlı iki düğüm arasında, T'deki en düşük düğüm olarak tanımlanır ve bu düğüm, hem p hem de q'nun soyundan gelir (bir düğümün kendisinin soyundan olmasına izin veririz).

BST, düzey sıralı bir liste olarak temsil edilir. LCA düğümünün değerini döndüren lowestCommonAncestor(root: list, p: int, q: int) -> int işlevini uygulayın.

Kısıtlamalar
  • The number of nodes in the tree is in the range [2, 100000]
  • -1000000000 <= Node.val <= 1000000000
  • All Node.val are unique
  • p != q
  • p and q will exist in the BST

Örnekler

Example 1
Input
[6,2,8,0,4,7,9,None,None,3,5], 2, 8
Output
6
Explanation

The LCA of nodes 2 and 8 is 6, which is the root.

Example 2
Input
[6,2,8,0,4,7,9,None,None,3,5], 2, 4
Output
2
Explanation

The LCA of nodes 2 and 4 is 2, since a node can be a descendant of itself.

Example 3
Input
[2,1], 2, 1
Output
2
Explanation

The LCA of nodes 2 and 1 is 2.

Need a Hint?
Kümeler veya yığınlar gibi Ağaçlara özgü veri yapılarını kullanmayı düşünün.
Edge Cases to Watch
  • Boş giriş yapıları
  • Tek eleman girişleri
  • Büyük sayısal sınırlar

Çözmeye Hazır mısınız?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

Editörde Aç
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

Önerilen Python Kaynakları

İlgili etkileşimli eğitimler, yardımcı sayfalar ve kod karşılaştırmalarıyla bilginizi genişletin.