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

厦门 网站制作长沙3合1网站建设

厦门 网站制作,长沙3合1网站建设,搜索引擎网站推广如何优化,邯郸做网站最好的公司1.实验内容 给定两个大小分别为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。请你找出并返回这两个正序数组的 中位数 。 2.实验目的 算法的时间复杂度应该为 O(log (mn)) 。 3.基本思路 碰到时间复杂度要求log的,肯定用二分查找&…

1.实验内容

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

2.实验目的

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

3.基本思路

碰到时间复杂度要求log的,肯定用二分查找,即每次在现有数据的一半中找,下一次再一半,每次循环可以将查找范围缩小一半。但是我这里用多的是双指针算法,一起查找,不需要归并数组,只需找到中位数的下标,但是复杂度仍然是O(min(m+n))

4.算法分析

首先需要通过判断`m`和`n`的大小来确定两个数组是否为空。

如果两个数组都不为空,则使用双指针法遍历两个数组,将较小的元素依次添加到动态数组`temp`中,直到找到第k+1小的元素为止。

如果其中一个数组为空,则直接将另一个非空数组赋值给`temp`。最后,根据`(m+n)%2`的值来判断中位数的位置。如果为奇数,则直接取`temp[k]`作为结果;如果为偶数,则取`temp[k]`和`temp[k-1]`的平均值作为结果。

5.实验心得

碰到时间复杂度要求log的,肯定用二分查找;但是双指针算法比普通的归并算法还是要好一些。

代码:

class Solution {
public:double findMedianSortedArrays(vector<int>& nums1, vector<int>& nums2) {float result;int m=nums1.size();int n=nums2.size();int k=(m+n)/2;vector <int> temp;int i=0,j=0;int count=0;//如两个数组不为空,找到前k+1小数存入新数组if(m>0&& n>0){while(count<=k){if(i==m){temp.push_back(nums2[j++]);count++;continue;}if(j==n){temp.push_back(nums1[i++]);count++;continue;}temp.push_back(nums1[i]<=nums2[j]?nums1[(i++)]:nums2[(j++)]);count++;}}//其中一个数组为空的情况下else if(m==0) temp=nums2;else if(n==0) temp=nums1;//返回中位数if((m+n)%2!=0){result=temp[k];}else {result=(float(temp[k])+float(temp[k-1]))/2;}return result;}    
};

(PS:不是我写的)

http://www.yayakq.cn/news/369312/

相关文章:

  • 几个好用的在线网站应届生求职网站官网
  • 网站开发html5二元期权网站建设
  • 北京微网站建设设计服务廊坊seo关键字排名
  • 河北省电力建设第一工程公司网站wordpress中文版apk
  • 重钢建设公司官方网站番禺网站建设系统
  • 泉州网站seo网站建设拿什么框架
  • 网站微商城的建设运营实践和思考广西住房和城乡建设厅继续教育网
  • 品牌网站建设价格实惠好素材网站
  • 网站前期基础建设 怎么写家装类设计网站
  • 建站公司的服务内容宝应县建设工程管理局网站
  • 龙岗龙城街道网站建设开网店3个月来亏了10万
  • 石家庄微网站建设公司哪家好网站后台做链接
  • 素材分享网站源码生鲜网站怎么做
  • 怎么在建设银行网站挂号网站建设运维情况
  • 网站标准宽度2345网址导航怎么卸载
  • 福安市代理做网站磁力宝最佳搜索引擎入口
  • 深圳建设网站公司拍摄宣传片的流程简要
  • 定制型网站建设服务器wordpress tinymce advanced
  • 帝国cms企业网站网站备案可以自己备案吗
  • 云南酒店网站建设vi设计公司成都
  • 实时开奖走势网站建设做网站建设公司哪家好?
  • wordpress登录和没登录菜单seo实战密码电子版
  • 做聚会的网站微信公众平台 网站 对接
  • 网站 动态 标签页电气工程WordPress模板
  • 网站建设氺金手指排名11做哪个网站好
  • 湖北省建设招投标监督机构网站网站有什么类型
  • 做旅游网站的设计感想设计公司的网站建设
  • 菜鸟建站网北京家装设计公司
  • 网站开发先学哪些知识韶山网站建设
  • 自学建立网站泰安软件开发公司哪家好