当前位置: 首页 > news >正文

如何查看网站是哪家公司做的?做瞹瞹嗳网站

如何查看网站是哪家公司做的?,做瞹瞹嗳网站,荧光字体制作网站,徐州网站排名公司哪家好154. 寻找旋转排序数组中的最小值 II 1. 题目描述2.详细题解3.代码实现3.1 Python3.2 Java 1. 题目描述 题目中转#xff1a;154. 寻找旋转排序数组中的最小值 II 2.详细题解 该题是153. 寻找旋转排序数组中的最小值的进阶题#xff0c;在153. 寻找旋转排序数组中的最小值… 154. 寻找旋转排序数组中的最小值 II 1. 题目描述2.详细题解3.代码实现3.1 Python3.2 Java 1. 题目描述 题目中转154. 寻找旋转排序数组中的最小值 II 2.详细题解 该题是153. 寻找旋转排序数组中的最小值的进阶题在153. 寻找旋转排序数组中的最小值的基础上将严格递增数组改为非递减数组即允许存在相同元素建议先尝试153. 寻找旋转排序数组中的最小值并理解后再尝试本题。     如果不考虑 O ( l o g n ) O(log n) O(logn)的时间复杂度直接 O ( n ) O(n) O(n)时间复杂度的扫描遍历一次即可。     非严格升序数组即存在相同元素的两个值。如果不旋转则最小的数值即为第一个索引为0的数值数组旋转了1到n次寻找数组中最小的元素这道题是二分查找的变型题。 对于严格递增的数组假定最小值为 m i n x min_x minx​数组旋转后假定结尾最后一个值为 t a i l tail tail对于最小值 m i n x min_x minx​其右边的元素均小于 t a i l tail tail而其左边的元素均大于 t a i l tail tail的值可以利用该性质使用二分查找算法。但对于非严格递增的数组来说由于存在相同值的情况因此需要单独讨论。   具体算法如下 Step1初始化两个指针 l e f t left left 和 r i g h t right right分别指向数组的起始和结束位置Step2计算中间元素的索引 m i d ( l e f t r i g h t ) / 2 mid (left right) / 2 mid(leftright)/2Step3如果 n u m s [ m i d ] n u m s [ r i g h t ] nums[mid] nums[right] nums[mid]nums[right]说明区间 ( m i d , r i g h t ] (mid, right] (mid,right]均为最小值右边的元素故移除更新 r i g h t m i d rightmid rightmid而 m i d mid mid可能为最小值因此更新区间时不能舍弃 m i d mid midStep4如果 n u m s [ m i d ] n u m s [ r i g h t ] nums[mid] nums[right] nums[mid]nums[right]说明区间 [ l e f t , m i d ] [left, mid] [left,mid]均为最小值左边的元素故移除更新 l e f t m i d 1 leftmid1 leftmid1此时 m i d mid mid值不可能为最小值因为其已经大于了结尾值故可舍弃 m i d mid midStep5否则即 n u m s [ m i d ] n u m s [ r i g h t ] nums[mid]nums[right] nums[mid]nums[right]此时难以判断是说明那个区间不包含最小值例如 [ 3 , 3 , 3 , 1 , 2 , 3 ] 、 [ 3 , 1 , 2 , 3 , 3 , 3 , 3 ] [3,3,3,1,2,3]、[3,1,2,3,3,3,3] [3,3,3,1,2,3]、[3,1,2,3,3,3,3]但由于此时它们的值均相同所以无论 n u m s [ r i g h t ] nums[right] nums[right] 是不是最小值都有一个它的「替代品」 n u m s [ m i d ] nums[mid] nums[mid]因此可以忽略二分查找区间的右端点更新 r i g h t − 1 right-1 right−1。Step6当指针left小于right时重复步骤Step2_Step6Step7否则循环结束返回 n u m s [ l e f t ] nums[left] nums[left]。 3.代码实现 3.1 Python class Solution:def findMin(self, nums: List[int]) - int:left, right 0, len(nums) - 1while left right:mid (left right) // 2if nums[mid] nums[right]:right midelif nums[mid] nums[right]:left mid 1else:right - 1return nums[left]3.2 Java class Solution {public int findMin(int[] nums) {int left 0, right nums.length - 1;while (left right){int mid (left right)/2;if (nums[mid] nums[right]){rightmid;}else if (nums[mid] nums[right]){left mid 1;}else{right--;}}return nums[left];} }执行用时不必过于纠结对比可以发现对于python和java完全相同的编写java的时间一般是优于python的至于编写的代码的执行用时击败多少对手执行用时和网络环境、当前提交代码人数等均有关系可以尝试完全相同的代码多次执行用时也不是完全相同只要确保自己代码的算法时间复杂度满足相应要求即可也可以通过点击分布图查看其它coder的code。
http://www.hkea.cn/news/14302877/

相关文章:

  • 如何将网站提交给百度258网站建设
  • 网站新闻编辑怎么做国外免费wordpress主题
  • 网站添加视频外贸网站建设石家庄
  • 网站首页一般做多大尺寸广东网站建设发信息
  • 邯郸学校网站建设费用上海建站网络科技有限公司
  • 网站推广服务网址外包程序员的出路
  • 宝洁公司网站做的怎么样wordpress 调查系统
  • 免费的网站平台有哪些烘焙培训
  • jsp网站建设期末作业北京电商平台网站建设
  • 做投资理财网站wordpress注册表单
  • 网站建设公司那家好外贸流程全步骤外贸篇
  • 百度免费建网站徐州网站建设哪家好
  • 泰安网站制作电话有赞分销市场登录入口
  • 四川建设设计公司网站网站建设哪一家好
  • 做网站的 简历宁波建设行业招聘信息网站
  • 购物网站项目建设背景介绍医疗培训网站建设
  • 优化网站做什么的深圳住房与建设部网站
  • 建设网站审批做餐饮系统网站建设
  • 怎样注册网站中文域名宝安营销型网站建设公司
  • 手机网站免费制作上海排名seo公司
  • 上门做睫毛哪个网站仓山网站建设
  • wordpress 增大内存天津关键词优化效果
  • 网站建设和优化内容最重要网站发布与推广计划
  • 上海未来网站建设公司机械类网站用什么做背景
  • 如何做自己官方网站wordpress 2m
  • 有什么国外的设计网站推荐安徽住房建设厅官网信息查询
  • 网站频繁被攻击怎么办网站安全检测漏洞扫描风险等级
  • 快速开发平台开发国家优化防控措施
  • 佘山网站建设学做馒头面包哪个网站好
  • 加盟产品网站建设方案沙井建网站