JavaScript实现获取两个排序数组的中位数算法示例


Posted in Javascript onFebruary 26, 2019

本文实例讲述了JavaScript实现获取两个排序数组的中位数算法。分享给大家供大家参考,具体如下:

题目

给定两个大小为 m 和 n 的有序数组 nums1 和 nums2 。

请找出这两个有序数组的中位数。要求算法的时间复杂度为 O(log (m+n)) 。

你可以假设 nums1 和 nums2 不同时为空。

示例 1:

nums1 = [1, 3]
nums2 = [2]

中位数是 2.0

示例 2:

nums1 = [1, 2]
nums2 = [3, 4]

中位数是 (2 + 3)/2 = 2.5

分析:用数组排序方法轻松解决

JS代码:

var findMedianSortedArrays = function(nums1, nums2) {
  for(i=0;i<nums2.length;i++){
    nums1.push(nums2[i])
  }
  nums1=nums1.sort(function(a,b){ return b-a});//排序
  if(nums1.length%2==0){
    return (nums1[nums1.length/2]+nums1[nums1.length/2-1])/2 //中位数
  }
  else{return nums1[(nums1.length-1)/2]}
}
var nums1 = [1, 2]
var nums2 = [3, 4]
console.log(findMedianSortedArrays(nums1,nums2))

使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试上述代码,可得如下运行结果:

 JavaScript实现获取两个排序数组的中位数算法示例

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
JS request函数 用来获取url参数
May 17 Javascript
js实现单击图片放大图片的方法
Feb 17 Javascript
js实现简单选项卡与自动切换效果的方法
Apr 10 Javascript
javascript常用函数(1)
Nov 04 Javascript
Node.js实用代码段之获取Buffer对象字节长度
Mar 17 Javascript
Javascript 5种方法实现过滤删除前后所有空格
Jun 22 Javascript
Bootstrap标签页(Tab)插件使用方法
Mar 21 Javascript
浅谈vue项目重构技术要点和总结
Jan 23 Javascript
angularJS开发注意事项
May 26 Javascript
Vue实现按钮旋转和移动位置的实例代码
Aug 09 Javascript
JS中数组与对象的遍历方法实例小结
Aug 14 Javascript
小程序Request的另类用法详解
Aug 09 Javascript
小程序hover-class点击态效果实现
Feb 26 #Javascript
JS实现计算小于非负数n的素数的数量算法示例
Feb 26 #Javascript
vue使用Font Awesome的方法步骤
Feb 26 #Javascript
JS实现的杨辉三角【帕斯卡三角形】算法示例
Feb 26 #Javascript
create-react-app使用antd按需加载的样式无效问题的解决
Feb 26 #Javascript
JS实现电话号码的字母组合算法示例
Feb 26 #Javascript
JS实现的合并两个有序链表算法示例
Feb 25 #Javascript
You might like
使用数据库保存session的方法
2006/10/09 PHP
php面向对象的方法重载两种版本比较
2008/09/08 PHP
php中获取远程客户端的真实ip地址的方法
2011/08/03 PHP
探讨Hessian在PHP中的使用分析
2013/06/13 PHP
Thinkphp中import的几个用法详细介绍
2014/07/02 PHP
JavaScript 注册事件代码
2011/01/27 Javascript
地址栏传递中文参数乱码在js里用escape转码
2013/08/28 Javascript
JS Loading功能的简单实现
2013/11/29 Javascript
jQuery实现的经典滑动门效果
2015/09/22 Javascript
JS+CSS实现分类动态选择及移动功能效果代码
2015/10/19 Javascript
在Node.js中使用Javascript Generators详解
2016/05/05 Javascript
jQuery实现磁力图片跟随效果完整示例
2016/09/16 Javascript
基于百度地图api清除指定覆盖物(Overlay)的方法
2018/01/26 Javascript
Vue 全家桶实现移动端酷狗音乐功能
2018/11/16 Javascript
基于Koa2写个脚手架模拟接口服务的方法
2018/11/27 Javascript
微信小程序实现图片滚动效果示例
2018/12/05 Javascript
JS原型和原型链原理与用法实例详解
2020/02/05 Javascript
Django框架的使用教程路由请求响应的方法
2018/07/03 Python
深入理解Python中的 __new__ 和 __init__及区别介绍
2018/09/17 Python
详解Python3 基本数据类型
2019/04/19 Python
Django ORM 自定义 char 类型字段解析
2019/08/09 Python
python TK库简单应用(实时显示子进程输出)
2019/10/29 Python
基于Django OneToOneField和ForeignKey的区别详解
2020/03/30 Python
解决windows下python3使用multiprocessing.Pool出现的问题
2020/04/08 Python
Jupyter notebook运行Spark+Scala教程
2020/04/10 Python
用Python 执行cmd命令
2020/12/18 Python
地图可视化神器kepler.gl python接口的使用方法
2020/12/22 Python
美国折扣香水网站:The Perfume Spot
2020/12/12 全球购物
美国乒乓球设备、配件和服装品牌:Killerspin
2020/06/07 全球购物
房产转让协议书(2014版)
2014/09/30 职场文书
交通肇事罪辩护词
2015/05/21 职场文书
十七岁的单车观后感
2015/06/12 职场文书
SqlServer: 如何更改表的文件组?(进而改变存储位置)
2021/04/05 SQL Server
解读MySQL的客户端和服务端协议
2021/05/10 MySQL
python DataFrame中stack()方法、unstack()方法和pivot()方法浅析
2022/04/06 Python
HTML页面中使两个div并排显示的实现
2022/05/15 HTML / CSS