上来先问了一个系统设计的问题,一个front end, 一个back end。 front end有很多UI,一个UI对10个多customers,back end有许多processor,或者processor有多个进程、线程。问应该怎么设计这个并行分布运算的系统,才能让独立的任务得到优化。

完全那这个系统设计没有办法,需要有相应的经验才能答这种题。不知道为什么new grad也要问系统设计

这其中问了一些父子进程、线程各自的优劣

第一个算法题是给个String,比如AABBBCCCDD,问怎么压缩比较好。我给了一种方案A2B3C3D2,并用StringBuffer。这里经验来了:最好能跟考官说:Let me think for a while,然后给一个比较好的答案,然后写的时候前面的空留大一点。我写完之后,他说并不是所有情况都优化,问哪些情况不优,我说比如ABCDEFG这种情况,他问怎么改,我说如果accumulate number是1的话,就不要把数字加到Stringbuffer里面了。

期间还问了为啥要用StringBuffer, String 为什么immutable

另一道题是链表,问怎么删除链表某个节点,然后问如果只have access to这个节点,怎么删掉它,如果这个节点是最末一个节点怎么办。都是很基础的问题

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-09-17
  • 2021-08-08
  • 2022-01-26
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-01-07
  • 2021-08-27
  • 2022-12-23
  • 2022-12-23
  • 2021-08-10
相关资源
相似解决方案