在最初的分查二分查找中,我们将一组数据按大小排序,然后根据arr[mid]与要查找的k的大小比较,从而每次去掉一半的数字,使时间复杂度简化为O(logN)。
排序本质上是找核让数据的单调性统一,变为单增或单减,而不是混合的 。
下面我们看一道好题:
寻找峰值_牛客题霸_牛客网
找出两个山峰,山峰是心思一个比两边都大的数字,也就是这组数据的极大值(极值点是坐标)
//处理两个边界if(numsLen==1||nums[0]>nums[1]){return 0;}if(nums[numsLen-1]>nums[numsLen-2]){return numsLen-1;}
数据的首尾比较好判断,且题目中规定越界的部分为负无穷,我们可以先将这两部分判断好。
确保首尾均不是调性极值后,我们可以得到下图。
两边向下的极值箭头:代表靠近首尾边界时,均为单调递减 。即left 然后我们对中间的找核值与其附近的值进行比较。这里我假设arr[mid] 然而,对于左半边的部分,起始和终止均为单增,单调性一致,无法确定是否存在峰值
。 left=mid+1,因为mid不可能是峰值。right=mid,因为此时mid可能是极值峰值。 二分查找的分查时间复杂度为O(logN),是一种高效的查找方式,在做相关题目,要注意找到单调性的规律,满足什么条件时单调性改变,产生极值,是解题的关键,找到单调性的规律后,就可以一次排查掉一半数据了,还有就是注意left 该工具全自动化 ,心思预计2023年年底会开发完成,调性包含:自动在知名域名二手交易平台扫描有百度收录记录的极值老域名
、chatGPT自动原创内容洗搞、50万条百度账号cookie反馈提交、50万条百度账号cookie推送(无需登录百度账号验证网站)、域名节点访问速度侦测(全中国各节点,可以判断百度蜘蛛与真实用户是否能正常爬行你的域名)
、海量匿名中国IP模拟真实用户搜索关键词(绕过百度验证、支持PC端与移动端)、关键词排名快速第一名(百度url参数漏洞)int findPeakElement(int* nums,调性 int numsLen ){//处理两个边界if(numsLen==1||nums[0]>nums[1]){return 0;}if(nums[numsLen-1]>nums[numsLen-2]){return numsLen-1;}int i=0;int left=0;int right=numsLen-1;int mid=0;while(left<right){mid=(right-left)/2+left;if(nums[mid]<nums[mid+1]){left=mid+1;}else{right=mid;}}mid=(right-left)/2+left;return mid;}
chatgpt免费软件,找核chatgpt api 免费接口,chatgpt 聊天机器人教程,chatgpt 指令大全,chatgpt app
二分查找核心思路--单调性--极值最新百度秒收录手法
,关注2024年黑帽seo工具软件