class Solution {
public double findMedianSortedArrays(int[] nums1, int[] nums2) {
int len1=nums1.length,len2=nums2.length;
int total=len1+len2;
if(total%2==1)
{
return getk(nums1,nums2,total/2+1);
}
else
{
return (getk(nums1,nums2,total/2)+getk(nums1,nums2,total/2+1))/2.0;
}
}
public double getk(int []a,int []b,int k)
{
int lena=a.length;
int lenb=b.length;
int idxa=0,idxb=0;
while(true)
{
if(idxa==lena)return b[idxb+k-1];
if(idxb==lenb)return a[idxa+k-1];
if(k==1)return Math.min(a[idxa], b[idxb]);
int newidxa=Math.min(lena-1, idxa+k/2-1);
int newidxb=Math.min(lenb-1, idxb+k/2-1);
int p1=a[newidxa];int p2=b[newidxb];
if(p1<=p2)
{
k-=(newidxa-idxa+1);
idxa=newidxa+1;
}
else
{
k-=(newidxb-idxb+1);
idxb=newidxb+1;
}
}
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· DeepSeek在M芯片Mac上本地化部署
· 葡萄城 AI 搜索升级:DeepSeek 加持,客户体验更智能