Leetcode4__findMedianSortedArrays
findMedianSortedArrays
基本思路:通过指针按顺序移动来判断大小顺序,思路和有一道用链表求中间值一样;
class Solution {
public double findMedianSortedArrays(int[] nums1, int[] nums2) {
double mediumNum = 0;
//判断奇偶,取中间还是平均
boolean odd = true;
mediumNum = (nums1.length+nums2.length)/2 + 1;
if((nums1.length+nums2.length)%2==0){
odd = false;
}
int count = 1;
int i = 0;
int j = 0;
double current = 0;
double result = 0;
while(count<=mediumNum){
if(i<nums1.length && j<nums2.length ){
if(nums1[i]<nums2[j]){
current = nums1[i];
i++;
}else{
current = nums2[j];
j++;
}
}else if(!(i<nums1.length)){
current = nums2[j];
j++;
}else if(!(j<nums2.length)){
current = nums1[i];
i++;
}
if(odd){
if(count == mediumNum){
result = (double)current;
}
}else{
if(count == mediumNum -1){
result = current;
}else{
result += current;
result = (double)result/2 ;
}
}
count++;
}
return result;
}
}
运行结果

Leetcode4__findMedianSortedArrays的更多相关文章
随机推荐
- 201777010217-金云馨《面向对象程序设计(Java)》第二周学习总结
项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/nwnu-daizh/p ...
- acwing 81. 扑克牌的顺子
地址 https://www.acwing.com/problem/content/77/ 从扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的. 2-10为数字本身,A为1,J为11, ...
- Eviews作时间序列分析的一个实例
时间序列分析是作时间序列数据预测的一个重要部分,由于此次实验室竞赛也用到了时间序列分析,就在此说一下平稳性分析以及非平稳处理的方法: 1.判断平稳性 1.1平稳性的定义 ...
- Python解释器和Python集成环境小结
目录 一.执行Python程序的两种方式 1.1 交互式 1.2 命令行式 二.执行Python程序的两种IDE 2.1 Pycharm 2.2 Jupyter 一.执行Python程序的两种方式 1 ...
- 【翻译】spring-data 之JdbcTemplate 使用
文档 Jdbc的使用 基础的代码结构: 一个Application作为入口.IUserRepository和UserRepository作为具体的实现.applicationContext.xml定义 ...
- 新安装的windows 10无法更新报0x80240fff错误的解决方案
如果windows 10的安装文件比较老,可能会报0x80240fff错误导致无法更新. 网络上说的方法是选择推迟更新,因为这样貌似能让windows选择另外的更新服务器. 但实际上在我遇到的情况问题 ...
- vscode相关设置
一.如何设置vs每次点击文件打开新的窗口: 1.打开设置 2.搜索:"workbench.editor.enablePreview" 3.设置"workbench.edi ...
- 图解servlet
You can see the following illustration to better understand the lifecycle of the Servlet. When the r ...
- C#上手练习6(方法语句1)
方法是将完成同一功能的内容放到一起,方便书写和调用的一种方式,也体现了面向对象语言中封装的特性. 定义方法的语法形式如下. 访问修饰符 修饰符 返回值类型 方法名(参数列表){ ...
- Go文件内容追加问题
今天在用文件追加时,遇到点小问题,一直没法追加,起初是这样的 fp,err1 = os.OpenFile(filename,os.O_APPEND,0666) 上面这个死活加不了,后面改成 fp,er ...