首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
多数组中位数
[编程题]多数组中位数
热度指数:1336
时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 256M,其他语言512M
算法知识视频讲解
给定两个升序的数组 arr1 和 arr2 ,求两个数组合并后的下中位数
注意:下中位数指在两个数组的数个数在偶数时取更小的
数据范围:两个数组的长度都满足
,数组中的所有值都满足
示例1
输入
[1,2,3],[3,4,5]
输出
3
示例2
输入
[1,2,3],[4,5]
输出
3
马上挑战
算法知识视频讲解
提交运行
算法知识视频讲解
添加笔记
求解答(0)
邀请回答
收藏(12)
分享
纠错
提交结果有问题?
1个回答
9篇题解
添加回答
0
C
子沐728592488
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param arr1 int整型一维数组
* @param arr1Len int arr1数组长度
* @param arr2 int整型一维数组
* @param arr2Len int arr2数组长度
* @return int整型
*
* C语言声明定义全局变量请加上static,防止重复定义
*/
int getUpMedian(int* arr1, int arr1Len, int* arr2, int arr2Len ) {
// write code here
int maxCount = (arr1Len + arr2Len + 1) / 2;
int ret = 0;
int i = 0;
int j = 0;
for (int count = 0; count < maxCount; count++) {
if (i < arr1Len) {
if (j < arr2Len) {
if (arr1[i] < arr2[j]) {
ret = arr1[i++];
} else {
ret = arr2[j++];
}
} else {
ret = arr1[i++];
}
} else {
ret = arr2[j++];
}
}
return ret;
}
发表于 2022-07-10 13:07:31
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
分治
二分
堆
难度:
1条回答
12收藏
1535浏览
热门推荐
通过挑战的用户
查看代码
yinyi
2022-11-22 11:00:42
94的菜鸟
2022-11-08 23:54:02
ৡ晨ꦿ᭄࿐
2022-09-15 09:46:40
王小牛123
2022-09-11 10:17:46
雷欧尼桑
2022-09-09 22:53:47
相关试题
航海
排序
思维
二分
评论
(1)
要求先给出思路,然后写代码,可以使...
搜狐
查找
分治
评论
(3)
分组
基础数学
二分
评论
(11)
属于组合逻辑电路是()。
数字电路
评论
(1)
如果通过这次面试我们单位录用了你,...
岗位认知
自我认知
评论
(1)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param arr1 int整型一维数组 * @param arr2 int整型一维数组 * @return int整型 */ public int getUpMedian (int[] arr1, int[] arr2) { // write code here } }
class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param arr1 int整型vector * @param arr2 int整型vector * @return int整型 */ int getUpMedian(vector
& arr1, vector
& arr2) { // write code here } };
#coding:utf-8 # # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param arr1 int整型一维数组 # @param arr2 int整型一维数组 # @return int整型 # class Solution: def getUpMedian(self , arr1 , arr2 ): # write code here
using System; using System.Collections.Generic; class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param arr1 int整型一维数组 * @param arr2 int整型一维数组 * @return int整型 */ public int getUpMedian (List
arr1, List
arr2) { // write code here } }
/** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param arr1 int整型一维数组 * @param arr2 int整型一维数组 * @return int整型 */ function getUpMedian( arr1 , arr2 ) { // write code here } module.exports = { getUpMedian : getUpMedian };
# # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param arr1 int整型一维数组 # @param arr2 int整型一维数组 # @return int整型 # class Solution: def getUpMedian(self , arr1: List[int], arr2: List[int]) -> int: # write code here
package main import "fmt" /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param arr1 int整型一维数组 * @param arr2 int整型一维数组 * @return int整型 */ func getUpMedian( arr1 []int , arr2 []int ) int { // write code here }
/** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param arr1 int整型一维数组 * @param arr1Len int arr1数组长度 * @param arr2 int整型一维数组 * @param arr2Len int arr2数组长度 * @return int整型 */ int getUpMedian(int* arr1, int arr1Len, int* arr2, int arr2Len ) { // write code here }
# # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param arr1 int整型一维数组 # @param arr2 int整型一维数组 # @return int整型 # class Solution def getUpMedian(arr1, arr2) # write code here end end
object Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param arr1 int整型一维数组 * @param arr2 int整型一维数组 * @return int整型 */ def getUpMedian(arr1: Array[Int],arr2: Array[Int]): Int = { // write code here } }
object Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param arr1 int整型一维数组 * @param arr2 int整型一维数组 * @return int整型 */ fun getUpMedian(arr1: IntArray,arr2: IntArray): Int { // write code here } }
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param arr1 int整型一维数组 * @param arr2 int整型一维数组 * @return int整型 */ public int getUpMedian (int[] arr1, int[] arr2) { // write code here } }
/** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param arr1 int整型一维数组 * @param arr2 int整型一维数组 * @return int整型 */ export function getUpMedian(arr1: number[], arr2: number[]): number { // write code here }
public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param arr1 int整型一维数组 * @param arr2 int整型一维数组 * @return int整型 */ func getUpMedian ( _ arr1: [Int], _ arr2: [Int]) -> Int { // write code here } }
struct Solution{ } impl Solution { fn new() -> Self { Solution{} } /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param arr1 int整型一维数组 * @param arr2 int整型一维数组 * @return int整型 */ pub fn getUpMedian(&self, arr1: Vec
, arr2: Vec
) -> i32 { // write code here } }
[1,2,3],[3,4,5]
3
[1,2,3],[4,5]
3