FB背靠背面经

刚刚结束背靠背实习电面,求人品!

第一面:
q1: Implemnt两种办法print singly linked list backwords, 分析时间空间复杂度
q2: 给一些数字,Implement randomPop()来randomly pop中间的一个数字

第二面
q1. 给一组点,输出其中k个离(0,0)最近的点
q2. implement anagrammedIndexOf(). e.g. s1=“abcde” s2=“acb”, anagrammedIndexOf(s1,s2)=0 因为"acb"是"abc"的anagram而"abc"在s1中的index为0

可以有重复。 解法是维持一个很长的array和int capacity. array从[0~capacity)存了之前输入的所有数字的. Add新数字n是array[capacity++]=n; RandomPop是 swap(array, Math.random()*capacity, capacity-1); capacity–;

  1. q1: reverse + recursion q2: 删把零 请问楼主有重复数字吗?
  2. q1: pq q2: 史散吧

2 q1 binary search也能做吧

也可以用stack吧

Thanks for sharing

Thanks for sharing