DSA SectionСредний

B Tree

Detailed guide and Python implementation for the 'B Tree' problem.

Постановка задачи

Средний

Write a function is_valid_btree_leaf_depth(keys, child_pointers, t) that checks if a B-Tree structure node properties are valid. Specifically, return True if all leaf nodes are at the same depth and every node (except root) has between t-1 and 2t-1 keys, where t is the minimum degree. Input format: keys mapping node ID to list of keys, child_pointers mapping node ID to list of child IDs, and minimum degree t.

Ограничения
  • 2 <= t <= 10
  • 1 <= len(keys) <= 100

Примеры

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?
Consider using Trees-specific data structures like sets or heaps.
Edge Cases to Watch
  • Empty input structures
  • Single element inputs
  • Large numerical bounds

Готовы решить?

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

Открыть в редакторе
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

Рекомендуемые ресурсы Python

Расширьте свои знания с помощью соответствующих интерактивных руководств, шпаргалок и сравнений кода.

Учебник по Python

Объяснение переменных и типов данных Python

Понимать переменные Python и основные типы данных (строки, целые числа, числа с плавающей запятой, логические значения). Полное руководство для начинающих по распределению памяти в Python.

Посмотреть ресурс
Практическое руководство

Как генерировать случайные числа в Python

Узнайте, как генерировать случайные числа в Python. Сравните randrange, randint и генерацию равномерного числа с плавающей запятой с контролем заполнения.

Посмотреть ресурс
Шпаргалка

Шпаргалка по встроенным функциям Python

Справочное руководство по встроенным функциям Python. Узнайте, как использовать print, len, range, enumerate, zip, map, filter и многое другое.

Посмотреть ресурс
Сравнение языков

Python против Ruby: сценарии, веб-фреймворки и философия

Сравните Python и Ruby. Изучите тонкие различия в их философии, элегантности синтаксиса, веб-фреймворках (Djangoи Rails) и стилях выполнения.

Посмотреть ресурс