首页 > 试题广场 >

在两个排序数组中找到第k小的数

[编程题]在两个排序数组中找到第k小的数
  • 热度指数:1137 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
给定两个有序数组arr1和arr2,再给定一个整数K,返回所有数中第K小的数。
[要求]
如果arr1的长度为N,arr2的长度为M,时间复杂度请达到,额外空间复杂度

输入描述:
第一行三个整数N, M, K分别表示数组arr1, arr2的大小,以及需要询问的数
接下来一行N个整数,表示arr1内的元素
再接下来一行M个整数,表示arr2内的元素


输出描述:
输出一个整数表示答案
示例1

输入

5 3 1
1 2 3 4 5
3 4 5

输出

1

说明

1是所有数中第一小的数
示例2

输入

3 4 4
1 2 3
3 4 5 6

输出

3

说明

3是所有数中第4小的数,所以返回3

备注:
头像 WYJ96
发表于 2021-08-15 05:29:43
import java.util.Scanner; public class Main{ public static int getUpMedian2(int[] arr1, int s1, int e1, int[] arr2, int s2, int e2) { if 展开全文