首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
课程
专栏·文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
在线笔面试、雇主品牌宣传
登录
/
注册
予辰
获赞
76
粉丝
6
关注
3
看过 TA
22
男
门头沟学院
2022
算法工程师
IP属地:未知
暂未填写个人简介
私信
关注
拉黑
举报
举报
确定要拉黑予辰吗?
发布(18)
刷题
予辰
2020-07-08 11:37
算法工程师
求两个有序数组的中位数
题目描述有两个大小分别为m和n的有序数组A和B。请找出这两个数组的中位数。你需要给出时间复杂度在O(log (m+n))以内的算法。思路分析两个大小分别为m和n的有序数组,我们要找出它们的中位数,而且要求时间复杂度是对数级别的,那么我们自然而然地就会想到二分查找算法,可是要怎么进行呢?寻找这两个数组的中位数相当于在数组A和B中找到中间元素,如果数组元素总数是奇数那么就是最中间的那个元素((m+n)/2+1),如果是偶数那么就是最中间的两个元素((m+n)/2、(m+n)/2+1)。这样问题就转化成给定两个有序数组,求第k小元素了。接下来就处理转化来的问题,在数组A中找到第k/2小元素a,在数组...
0
点赞
评论
收藏
转发
予辰
2020-07-06 15:22
已编辑
算法工程师
sort()函数与qsort()函数
qsort()函数与sort()函数简记qsort函数和sort函数只能对连续内存上的数据进行排序。一 qsort()函数qsort(基本快速排序的方法,每次把数组分成两部分和中间的一个划分值,而对于有多个重复值的数组来说,基本快速排序的效率较低,且不稳定)。集成在C语言库函数里面的的qsort函数,使用三路划分的方法解决排序这个问题。所谓三路划分,是指把数组划分成小于划分值,等于划分值和大于划分值的三个部分。qsort()函数的具体形式void qsort( void base, size_t num, size_t width, int (__cdecl *compare )int com...
0
点赞
评论
收藏
转发
予辰
2020-09-19 15:17
已编辑
算法工程师
算法小记
题目描述剑指offer面试题38:输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。题解方法一:分治法分治法:求一个规模为n的问题,先求左边规模大约为n/2的问题,再求右边规模大约为n/2的问题,然后合并左边和右边的解,从而求得最终解。经典例子就是归并排序,先对左半部分和右半部分数据分别进行排序,最后将左半部分和右半部分的数据进行归并,得到整个数据的排序结果。 void MergeSortCore(vector<int>&number,vector<int>&copy,int star...
0
点赞
评论
收藏
转发
1
2
工具箱
TA的圈子
暂未加入圈子
TA的圈子
TA的笔记
暂无笔记
TA的笔记
登录
0
天
已登录
0
天
连续登录
0
人
今日访客
牛客网
牛客企业服务