Выполнение двоичного поиска в связанном списке никогда не является хорошей идеей , так как обычно его время выполнения может превышать время стандартного ( линейного ) поиска.
С точки зрения массивов, мы могли бы выполнить двоичный поиск и перейти непосредственно в середину массива, а затем перейти назад или вперед.
Это связано с тем, что мы можем получить доступ к элементам массива напрямую, используя их индекс.
Однако, как мы видели, связанные списки, в отличие от массивов, не могут воспользоваться прямым доступом, и мы должны переходить от элемента к элементу.
Из-за этой естественной проблемы поиска связанных списков поиск идет медленно, и, очевидно, мы не можем сделать его лучше.
Единственный способ улучшить поиск по динамическим структурам данных-это использовать другую структуру данных.
Дерево-это структура данных, в которой каждый элемент, за исключением хранения некоторых данных, содержит ссылку (указатель) на своих дочерних и родительских элементов.
Выполнение двоичного поиска в связанном списке никогда не является хорошей идеей , так как обычно его время выполнения может превышать время стандартного ( линейного ) поиска.
С точки зрения массивов, мы могли бы выполнить двоичный поиск и перейти непосредственно в середину массива, а затем перейти назад или вперед.
Это связано с тем, что мы можем получить доступ к элементам массива напрямую, используя их индекс.
Однако, как мы видели, связанные списки, в отличие от массивов, не могут воспользоваться прямым доступом, и мы должны переходить от элемента к элементу.
Из-за этой естественной проблемы поиска связанных списков поиск идет медленно, и, очевидно, мы не можем сделать его лучше.
Единственный способ улучшить поиск по динамическим структурам данных-это использовать другую структуру данных.
Дерево-это структура данных, в которой каждый элемент, за исключением хранения некоторых данных, содержит ссылку (указатель) на своих дочерних и родительских элементов.