EB1A NSC I140 追加PP Approved (timeline)# Immigration - 落地生根
n*t
1 楼
我说,“大姐,array.size(),的复杂度是O(n)啊!第二种方法,用了.size(),所以
复杂度至少是O(n), 不能更少了。"
对方说:" 那你给的第一个解法也要用到.size(),那除掉.size()那步,我可以专门选一
个极端的情况,让第二个走n/2, 第一个走 n。 所以第二个快。"
为了说某种算法快,可以去掉这个算法里面O(n)的部分,然后选一个极端的情况,不到
n步,然后这个算法就比另一个O(n)快了?
~~~~~~~~~~~~~~~~~
店面,出了两道题,每道我都给出了两种解法,写出了code。
刚才feedback没有在第一时间给出最优解法,超时5分钟,要求加面。
我写code之前问,有两种解法,这样这样。都有利弊,利在哪,弊在哪。你要哪种?
对方说,随便。
然后我就写了。然后对方说,你没有第一时间给出最优解。
我说,大姐你让我随便的啊。再说都是O(n)啊。
然后对方说,我说过吗? anyway, 在某些特殊情况下,第二种,要更快,所以你的解
不是最优解。
我说,“大姐,array.size(),的复杂度是O(n)啊!第二种方法,用了.size(),所以
复杂度至少是O(n), 不能更少了。"
对方说:" 那你给的第一个解法也要用到.size(),那除掉.size()那步,我可以专门选一
个极端的情况,让第二个走n/2, 第一个走 n。 所以第二个快。"
为了说某种算法快,可以去掉这个算法里面O(n)的部分,然后选一个极端的情况,不到
n部,然后这个算法就比另一个O(n)快了?
此外,我code里面有,
i=0;
A[i++]=3; 对方问了我好多遍,啥意思。我说是A[0]=3.
对方反复确认为啥是A[0].
花了一分钟解释,对方不太明白,说是A[1]
对方问, are you sure 我说,我sure。对方无语。
后对方又让我写第二题第二种解法的伪代码。
然后我写完了,又改了改,基本上算bug free code了。
对方埋怨我有几行没有空格。
现在都default每到题都要用两种解法吗?要是问题复杂,只有一种解法呢?
复杂度至少是O(n), 不能更少了。"
对方说:" 那你给的第一个解法也要用到.size(),那除掉.size()那步,我可以专门选一
个极端的情况,让第二个走n/2, 第一个走 n。 所以第二个快。"
为了说某种算法快,可以去掉这个算法里面O(n)的部分,然后选一个极端的情况,不到
n步,然后这个算法就比另一个O(n)快了?
~~~~~~~~~~~~~~~~~
店面,出了两道题,每道我都给出了两种解法,写出了code。
刚才feedback没有在第一时间给出最优解法,超时5分钟,要求加面。
我写code之前问,有两种解法,这样这样。都有利弊,利在哪,弊在哪。你要哪种?
对方说,随便。
然后我就写了。然后对方说,你没有第一时间给出最优解。
我说,大姐你让我随便的啊。再说都是O(n)啊。
然后对方说,我说过吗? anyway, 在某些特殊情况下,第二种,要更快,所以你的解
不是最优解。
我说,“大姐,array.size(),的复杂度是O(n)啊!第二种方法,用了.size(),所以
复杂度至少是O(n), 不能更少了。"
对方说:" 那你给的第一个解法也要用到.size(),那除掉.size()那步,我可以专门选一
个极端的情况,让第二个走n/2, 第一个走 n。 所以第二个快。"
为了说某种算法快,可以去掉这个算法里面O(n)的部分,然后选一个极端的情况,不到
n部,然后这个算法就比另一个O(n)快了?
此外,我code里面有,
i=0;
A[i++]=3; 对方问了我好多遍,啥意思。我说是A[0]=3.
对方反复确认为啥是A[0].
花了一分钟解释,对方不太明白,说是A[1]
对方问, are you sure 我说,我sure。对方无语。
后对方又让我写第二题第二种解法的伪代码。
然后我写完了,又改了改,基本上算bug free code了。
对方埋怨我有几行没有空格。
现在都default每到题都要用两种解法吗?要是问题复杂,只有一种解法呢?