This commit is contained in:
krahets
2025-09-11 03:53:53 +08:00
parent 9e518c0561
commit fe56286bb0
57 changed files with 1002 additions and 926 deletions

View File

@@ -3577,7 +3577,7 @@
<li>二分查找依赖数据的有序性,通过循环逐步缩减一半搜索区间来进行查找。它要求输入数据有序,且仅适用于数组或基于数组实现的数据结构。</li>
<li>暴力搜索通过遍历数据结构来定位数据。线性搜索适用于数组和链表,广度优先搜索和深度优先搜索适用于图和树。此类算法通用性好,无须对数据进行预处理,但时间复杂度 <span class="arithmatex">\(O(n)\)</span> 较高。</li>
<li>哈希查找、树查找和二分查找属于高效搜索方法,可在特定数据结构中快速定位目标元素。此类算法效率高,时间复杂度可达 <span class="arithmatex">\(O(\log n)\)</span> 甚至 <span class="arithmatex">\(O(1)\)</span> ,但通常需要借助额外数据结构。</li>
<li>实际中,我们需要对数据体量、搜索性能要求、数据查询和更新频率等因素进行具体分析,从而选择合适的搜索方法。</li>
<li>实际中,我们需要对数据规模、搜索性能要求、数据查询和更新频率等因素进行具体分析,从而选择合适的搜索方法。</li>
<li>线性搜索适用于小型或频繁更新的数据;二分查找适用于大型、排序的数据;哈希查找适用于对查询效率要求较高且无须范围查询的数据;树查找适用于需要维护顺序和支持范围查询的大型动态数据。</li>
<li>用哈希查找替换线性查找是一种常用的优化运行时间的策略,可将时间复杂度从 <span class="arithmatex">\(O(n)\)</span> 降至 <span class="arithmatex">\(O(1)\)</span></li>
</ul>