Sekcja DSAŚredni

Drzewo B

Szczegółowy przewodnik i implementacja Python dla problemu „B Tree”.

Oświadczenie o problemie

Średni

Napisz funkcję is_valid_btree_leaf_depth(keys, child_pointers, t), która sprawdza, czy właściwości węzła struktury B-Tree są prawidłowe. W szczególności zwróć True, jeśli wszystkie węzły-liście są na tej samej głębokości i każdy węzeł (z wyjątkiem korzenia) ma klucze od t-1 do 2t-1, gdzie t to minimalny stopień. Format wejściowy: keys mapowanie identyfikatora węzła na listę kluczy, child_pointers mapowanie identyfikatora węzła na listę identyfikatorów podrzędnych i minimalny stopień t.

Ograniczenia
  • 2 <= t <= 10
  • 1 <= len(keys) <= 100

Przykłady

Example 1
Input
keys = {1: [10, 20], 2: [5], 3: [15], 4: [25, 30]}, child_pointers = {1: [2, 3, 4]}, t = 2
Output
True
Explanation

Root 1 has keys [10, 20]. Children 2, 3, 4 are leaves at the same depth 1 and satisfy the key count constraint of 1 to 3 keys.

Need a Hint?
Rozważ użycie struktur danych specyficznych dla drzew, takich jak zestawy lub sterty.
Edge Cases to Watch
  • Puste struktury wejściowe
  • Wejścia jednoelementowe
  • Duże granice liczbowe

Gotowy do rozwiązania?

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

Otwórz w Edytorze
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

Polecane zasoby Pythona

Poszerzaj swoją wiedzę dzięki powiązanym interaktywnym samouczkom, ściągawkom i porównaniom kodów.