首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
一只弱鸡
2017-06-06 09:25
已编辑
字节跳动_抖音电商_资深后端工程师
关注
已关注
取消关注
牛客网刷题系统所耗时间和空间是什么机制?准不准?
在牛课刷题也刷了不少了,一直对他通过以后的提示没放在心上,今天刷leedcode时候,优化一道题,应该是会快很多,但是提交得出的时间和预想的完全不同,虽然我比较菜,但是O(1)和O(n)还是分的清的,并且之前也有过这样的情况,有的题实在不会写,复制了人家第一名的代码,人家飞速,自己的就很耗时间,求解答。谢谢大家了
提示
全部评论
推荐
最新
楼层
NotDeep
中国戏曲学院 算法工程师
关于时间: 评测系统呈现的是运行时间,一般说来时间测量都不是特别准确的,都会有小的误差,但是误差波动不大,不会有数量级的波动。影响代码实际运行效率的因素比较宏观当然是看理论的平均复杂度,做优化算法基本也是优化这个,但是还有很多微观一点的细节: 1、某些算法的极限情况会造成复杂度最差(比如快排)。 2、算法实际的常数很大,在一些极限一点的情况渐近复杂度不能显示出效率的差距,效率差距主要体现在常数上。 3、使用了一些可能常用的库函数,建议去弄清这些东西的复杂度。 比如std:sort 这个排序跑得飞快。。。 比如std::nth_element 可以认为是O(n)的。。然后在元素个数小于等于3的时候用的插排。。 有时候因为对库函数的复杂度不清楚,随意用上去会算不清具体的复杂度。 4、语言差异造成的IO差距和运行差距。比如在10^5 10^6这种输入量级的数据上可以对比下scanf和cin的效率差距,其他语言也可以做做对比。另外有些语言跑起来就是要慢一些。。。。 5、还有一些丧心病狂的优化技巧。。。。。。 关于空间: 空间测量基本是稳定准确的。一般算法题对空间是不做限制的,所以关于空间可能产生的问题就是爆栈空间,系统提供的栈空间是有限的,在一个局部开一个很大的数组是有爆栈风险的。这个空间大小主要看评测机是啥操作系统的,一般都是linux。 综上。。。个人认为对于能通过的题目可以不太需要care使用的时间空间,需要比较关注的是这个问题的理论最优复杂度算法的写法。。以及一些很优雅的写法?
点赞
回复
分享
发布于 2017-06-06 10:39
舍甫琴科
中华女子学院 Java
上代码看看
点赞
回复
分享
发布于 2017-06-06 10:22
一只弱鸡
楼主
字节跳动_抖音电商_资深后端工程师
Given a singly linked list where elements are sorted in ascending order, convert it to a height balanced BST。提交的就是下面的,注释掉的也是对的,开始是注释掉的那种,然后改成了这种。 public class Solution { public TreeNode sortedListToBST(ListNode head) { if(head == null) return null; if(head.next == null) return new TreeNode(head.val); ArrayList<Integer> list=new ArrayList<Integer>(); while(head!=null) { list.add(head.val); head=head.next; } return buildToBST(list,0,list.size()-1); } private TreeNode buildToBST(ArrayList<Integer> list, int start, int end) { if(end<start)return null; int mid=(start+end+1)/2;//题目中是要求偶数时候,中间2个,选后面那个数 TreeNode root = new TreeNode(list.get(mid)); root.left=buildToBST(list,start,mid-1); root.right=buildToBST(list,mid+1,end); return root; } // public TreeNode sortedListToBST(ListNode head) {//这个也是对的,没有上面的那个快 // if(head == null) return null; // if(head.next == null) return new TreeNode(head.val); // ListNode mid = head; // ListNode end = head; // ListNode preMid = null; // while (end != null && end.next != null) {//每一次都循环快慢指针找中点 // preMid = mid; // mid = mid.next; // end = end.next.next; // } // TreeNode root = new TreeNode(mid.val); // preMid.next = null; // root.left = sortedListToBST(head); // root.right = sortedListToBST(mid.next); // return root; // } }
点赞
回复
分享
发布于 2017-06-06 10:40
小小
浙江大学 产品经理
哪个题目?
点赞
回复
分享
发布于 2017-06-06 10:14
暂无评论,快来抢首评~
相关推荐
04-01 12:35
门头沟学院 运营
27届找运营实习,求指导
第一次找实习,双非一本,简历比较单薄,只有校园经历,想找中小厂的日常实习求大佬提一下修改意见,非常感谢
点赞
评论
收藏
分享
04-01 14:23
蚌埠坦克学院 嵌入式软件开发
我感觉我现在每天至少AI 100次以上
我现在每天就用AI写代码,真的就是躺平了,已经不想思考了,只需要等待AI帮我把代码写好,我自己直接躺平。每天可以干一周的活了,简直爽爆了。
你现在一天AI几次?
点赞
评论
收藏
分享
不愿透露姓名的神秘牛友
03-19 10:38
看到网传的丁老板这个图片,简直要笑死
rt 不知道是真的假的丁老板 太难绷了
实力求职者:
真的绷不住了,第一张霸总人设,第二张求生欲拉满
点赞
评论
收藏
分享
今天 00:19
东北大学 嵌入式工程师
5.1 Linux 应用开发 进程(一)
一、进程相关的基础概念程序:存放在磁盘上的指令和数据的有序集合(可执行文件),放在 ROM 里,是静态的。进程:是程序的一次完整执行过程,是动态的,包括创建、调度、执行和消亡。运行在 RAM 里,是执行一个程序所分配的资源总称,资源分配的基本单位。进程控制块 (PCB):在 Linux 中描述进程的结构体是 task_struct,包括进程标示符 (PID)、优先级、状态、进程用户、文件描述符表。进程类型:交互进程:在 shell 下启动,可在前台也可在后台执行批处理进程:和终端无关,被提交到作业队列中顺序执行守护进程:和终端无关,一直在后台运行,Ctrl+C 无法控制进程状态:运行态:进程正...
C++/嵌入式开发 秋招...
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
春招面了四十多场,焚绝在此
1.5W
2
...
AIcoding上线了!你确定不来刷刷?
1.4W
3
...
4.1 美团后端暑期实习面经
8102
4
...
双非春秋招3月总结与收获
6785
5
...
恒生电子笔试已燃尽
5595
6
...
字节暑期凉经
4472
7
...
快手Java暑期一面 30分钟最速传说
3691
8
...
美团暑期二面,横向挂
3638
9
...
4.2字节后端一面
3390
10
...
银行老学长带来点春招信息差
3373
创作者周榜
更多
正在热议
更多
#
面试被问到不会的问题,你怎么应对?
#
17144次浏览
372人参与
#
你都用vibe coding做过什么?
#
14486次浏览
609人参与
#
厦门银行科技岗值不值得投
#
14949次浏览
352人参与
#
你觉得大几开始实习最合适?
#
20479次浏览
215人参与
#
uu们,春招你还来吗?
#
57195次浏览
496人参与
#
你见过哪些招聘隐形歧视?
#
17678次浏览
154人参与
#
招商银行数字金融训练营
#
105643次浏览
915人参与
#
面试中,你被问过哪些奇葩问题?
#
93662次浏览
1052人参与
#
AI Coding实战技巧
#
9840次浏览
225人参与
#
恒生电子笔试
#
19486次浏览
153人参与
#
影石Insta360求职进展汇总
#
183716次浏览
1375人参与
#
做完笔试后你收到面试了吗?
#
19876次浏览
200人参与
#
虹软科技求职进展汇总
#
16531次浏览
138人参与
#
供应链/物流校招攻略
#
12276次浏览
218人参与
#
面试吐槽bot
#
186285次浏览
911人参与
#
Vibe Coding 会干掉初级岗位吗?
#
15986次浏览
194人参与
#
你现在一天AI几次?
#
8085次浏览
107人参与
#
大厂实习和小厂实习最大的区别是什么?
#
33326次浏览
239人参与
#
Claude Code泄露源码
#
11752次浏览
150人参与
#
如果人生可以debug你会改哪一行?
#
7487次浏览
124人参与
#
找工作中的小确幸
#
87485次浏览
467人参与
#
2023年不发年终奖的公司盘点
#
30602次浏览
177人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务