Я видел двоичные деревья и бинарный поиск, упомянутые в нескольких книгах, которые я читал в последнее время, но, поскольку я еще на начальном этапе обучения компьютерным наукам, мне еще предстоит пройти курс, который действительно имел дело с алгоритмы и структуры данных серьезно.
Я проверил типичные источники (Википедия, Google) и большинство описаний полезности и реализации (в частности) красно-черных деревьев оказались плотными и трудными для понимания. Я уверен, что для кого-то с необходимым фоном, это имеет смысл, но в настоящее время это читает почти как иностранный язык.
Так что же делает бинарные деревья полезными в некоторых общих задачах, которые вы выполняете во время программирования? Помимо этого, какие деревья вы предпочитаете использовать (пожалуйста, включите пример реализации) и почему?