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

宝塔面板wordpress青岛百度网站排名优化

宝塔面板wordpress,青岛百度网站排名优化,成都科技网站建设咨,巨省网站最近面试,发现要手撕算法加上机试,被完败,索性给自己立一个目标,一周训练2次。 第一题。 给定两个大小分别为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。请你找出并返回这两个正序数组的 中位数 。 …

最近面试,发现要手撕算法加上机试,被完败,索性给自己立一个目标,一周训练2次。

第一题。

给定两个大小分别为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。请你找出并返回这两个正序数组的 中位数 。

算法的时间复杂度应该为 O(log (m+n)) 。

示例 1:

输入:nums1 = [1,3], nums2 = [2]
输出:2.00000
解释:合并数组 = [1,2,3] ,中位数 2

示例 2:

输入:nums1 = [1,2], nums2 = [3,4]
输出:2.50000
解释:合并数组 = [1,2,3,4] ,中位数 (2 + 3) / 2 = 2.5

提示:

  • nums1.length == m
  • nums2.length == n
  • 0 <= m <= 1000
  • 0 <= n <= 1000
  • 1 <= m + n <= 2000
  • -10^6 <= nums1[i], nums2[i] <= 10^6

这题力扣第四题,我看着简单,内容还可以一下子接受.想了快三个小时。

double get_mid(int* nums,int numsSize)
{if(numsSize%2){return nums[numsSize/2];}else{return (nums[numsSize/2]+nums[(numsSize)/2-1])*1.0/2;}
}double findMedianSortedArrays(int* nums1, int nums1Size, int* nums2, int nums2Size) {if((nums1Size==0)&&(nums2Size==0)) return 0;else if((nums1Size==0)&&(nums2Size!=0)){return get_mid(nums2,nums2Size);}else if((nums2Size==0)&&(nums1Size!=0)){return get_mid(nums1,nums1Size);}else{if(nums1[nums1Size-1] <=nums2[0]){int len = nums1Size+nums2Size ;int mid_index = len /2;if(len % 2 ) // 长度是奇数{if(mid_index >= nums1Size){return nums2[nums2Size-mid_index-1];}else{return nums1[mid_index]*1.0;}}else  //长度是偶数{if(mid_index < nums1Size){return (nums1[mid_index]+nums1[mid_index-1])*1.0/2;}else if((mid_index) == nums1Size){return (nums1[nums1Size-1]+nums2[0])*1.0/2;}else{return (nums2[nums2Size-mid_index-1]+nums2[nums2Size-mid_index])*1.0/2;}}}else if(nums2[nums2Size-1] <=nums1[0]){int len = nums1Size+nums2Size ;int mid_index = len /2;if(len % 2 ) //长度是奇数{if(mid_index >= nums2Size){return nums1[nums1Size-mid_index-1];}else{return nums2[mid_index];}}else //长度是偶数{if(mid_index < nums2Size){return (nums2[mid_index]+nums2[mid_index-1])*1.0/2;}else if((mid_index) == nums2Size){return (nums1[0]+nums2[nums2Size-1])*1.0/2;}else{return (nums1[nums1Size-mid_index-1]+nums1[nums1Size-mid_index])*1.0/2;}}}else{int len = nums1Size+nums2Size ;int mid_index = len /2;int count =0;int _n1 = 0,_n2=0;int last=0,midv=0;while(true){if(_n1 == nums1Size) {midv=nums2[_n2];count++;if(count == mid_index+1){if(len%2){return midv*1.0;}else{return (last+midv)*1.0/2;} }_n2++;last = midv;}else if(_n2 == nums2Size) {midv=nums1[_n1];count++;if(count == mid_index+1){if(len%2){return midv*1.0;}else{return (last+midv)*1.0/2;} }_n1++;last = midv;}else{if(nums1[_n1] >= nums2[_n2]){midv = nums2[_n2];count++;if(count == mid_index+1){if(len%2){return midv*1.0;}else{return (last+midv)*1.0/2;}}_n2++;last = midv;}else{midv = nums1[_n1];count++;if(count == mid_index+1){if(len%2){return midv;}else{return (last+midv)*1.0/2;}}_n1++;last = midv;}}}}}}

写的很烂很长,就是没有做过算法题目的人的思维,用了很多特殊情况来提高运算速度,其实把最后一个else提取出来也可以进行运算。但不知道为什么内存消耗很高。

http://www.mmbaike.com/news/101437.html

相关文章:

  • 宁夏建设工程质量监督站网站发新闻稿平台
  • 景安网站备案的服务码免费关键词优化排名软件
  • 施工企业信用评价等级简单网站建设优化推广
  • 牛天下网站做的怎么样营销策划品牌策划
  • 襄阳住房和城乡建设网站抖音seo搜索引擎优化
  • 手机建立网站多少钱江苏seo团队
  • 教人做辐射4mod的网站推广衣服的软文
  • 政府网站架构工具北京网站推广营销服务电话
  • 石家庄做网站网络公司百度一下你就知道移动首页
  • 建设 展示型企业网站关键词挖掘长尾词工具
  • 专用车网站建设哪家好想要网站导航推广
  • 自用电脑做网站企业培训师
  • 做网站开发需要培训吗app推广有哪些渠道
  • 织梦想把网站上传到现有网站的文件夹中测试现有网站能正常使用肇庆seo优化
  • 伊春网站优化软文街
  • 电商网站开发环境怎么写巨量引擎
  • 长宁区网站建设设计找相似图片 识别
  • 做网站销售是干什么的搜索引擎有哪些网站
  • 做美食网站的图片文娱热搜榜
  • 推广运营是什么工作标题优化怎样选关键词
  • 安阳市商祺网络有限责任公司seo技术培训茂名
  • 电商网站开发发展和前景windows优化大师在哪里
  • 有没有做ppt好看的免费网站友情链接有用吗
  • wordpress右下角郑州seo优化推广
  • 班级网站建设交换链接的方法
  • 一级a做爰片免费网站短视频教程网站申请流程
  • 做网站win7好用么抖音seo排名软件
  • 360网站卫士代备案流程360安全网址
  • 中小企业做网站推广友情链接的作用有哪些
  • 商业计划书ppt模板免费下载新乡百度关键词优化外包