为什么要使用三元查找
通过引入三元搜索算法,最大限度地提高您的搜索能力并降低时间复杂性。可以将本文看作是使用不太为人所知但非常有效的算法(即三元搜索)来解锁高效搜索的功能。
三元搜索是一种减少(通过常数)和征服算法,可用于查找数组中的元素。它类似于二分法搜索,我们将数组分为两部分,但在这个算法中,我们将给定的数组分为三部分,并确定哪个具有键(搜索元素)。我们可以通过取mid1和mid2将数组分为三部分,计算如下所示。最初,l和r将分别等于0和n-1,其中n是数组的长度。
它和二分查找是一样的。唯一的区别是,它降低了时间复杂度。它的时间复杂度是O(log n以3为底),二分搜索的时间复杂度是O(log n以2为底)。
mid1 = l + (r-l)/3