楼主: JefferyChou
跳转到指定楼层
上一主题 下一主题
收起左侧

关于 SJF 代码分析以及 Amazon video follow up

🔗
 楼主| JefferyChou 2015-11-14 05:47:27 | 只看该作者
全局:

恭喜啊,我这周三video的,说一周内会有消息。。。还在焦虑的等待
回复

使用道具 举报

🔗
 楼主| JefferyChou 2015-11-14 05:48:39 | 只看该作者
全局:
candy-sweety 发表于 2015-11-14 05:47
因为是 return newnode  lz说的第三点如果有dupplicate的话结果会有不同。比如说 最大是7 我要插入也是7  ...

额。。。这个我忘了。。。我是压根没考虑这个情况。。。。
回复

使用道具 举报

🔗
georgehwong 2015-11-16 05:00:54 | 只看该作者
全局:
甯甯 发表于 2015-11-9 03:27
多谢楼主。我再想想我的代码。

SJF那题,[0, 2, 2], [1, 10, 1]breaks the code. At line 27, if the  ...

我先前看到有人分享的round robin的题干:The list of job arrival times and job run times are sorted in ascending order by arrival time. For jobs arriving at the same time, process them in the order they are found in the arrival array. 我猜想SJF是不是也是差不多的要求?如果是的话,10/3反而才应该是正解。
回复

使用道具 举报

🔗
chuxidemeng 2015-11-19 06:13:37 | 只看该作者
全局:
JefferyChou 发表于 2015-11-6 01:46
1.列表可能为空
2.它给的不是最小节点,你得找出最小节点和最大节点
3.如果它比最小节点更小或者比最大 ...

LZ请问这样写可以满足后2条吗?没有单独去找最大点和最小点。求指点

do {
                        if (target >= cur.val && target <= cur.next.val)
                                break;
                        if (cur.val > cur.next.val
                                        && (target < cur.next.val || target > cur.val))
                                break;
                        cur = cur.next;
                } while (cur != head);
回复

使用道具 举报

🔗
chuxidemeng 2015-11-19 06:20:49 | 只看该作者
全局:
chuxidemeng 发表于 2015-11-19 06:13
LZ请问这样写可以满足后2条吗?没有单独去找最大点和最小点。求指点

do {

我自己感觉这样便利一遍就可以
回复

使用道具 举报

🔗
 楼主| JefferyChou 2015-11-20 01:36:21 | 只看该作者
全局:
chuxidemeng 发表于 2015-11-19 06:13
LZ请问这样写可以满足后2条吗?没有单独去找最大点和最小点。求指点

do {

我有尝试过像你一样遍历一遍,但是test case好多过不去,不知道为啥。。。而且这个如果video时解释起来也麻烦。。。都是O(n)的,不如简单粗暴的过两遍
回复

使用道具 举报

🔗
aiwojiujiu 2015-11-20 09:20:13 | 只看该作者
全局:
楼主 你priorityqueue的解法很多bug啊。。。   一打眼就看见两个
回复

使用道具 举报

🔗
 楼主| JefferyChou 2015-11-20 09:30:56 | 只看该作者
全局:
aiwojiujiu 发表于 2015-11-20 09:20
楼主 你priorityqueue的解法很多bug啊。。。   一打眼就看见两个

是的。。。有两个test case通不过。。。然后当初发上了是为了讨论一下。。。我有改进过后的,但是帖子不能修改了。。。
回复

使用道具 举报

🔗
aiwojiujiu 2015-11-20 09:42:51 | 只看该作者
全局:
首先 priorityQueue 里面的comparatior有点问题 你没考虑 duration相同的时候 先到先执行
其次  你没考虑duplicate的情况 例如:
request = {0, 0, 1} duration = {2,1,1}
你的程序直接默认第一个进程一定执行,其实应该先执行第二个进程。。。
回复

使用道具 举报

🔗
 楼主| JefferyChou 2015-11-20 09:46:19 | 只看该作者
全局:
aiwojiujiu 发表于 2015-11-20 09:42
首先 priorityQueue 里面的comparatior有点问题 你没考虑 duration相同的时候 先到先执行
其次  你没考虑d ...

对,这俩问题我自己后来都考虑到了,但是对于第二点,OA 的test case并没有cover到。。。谢谢你的评论
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表