第一面笔试:三个算法题 题目一:给你多条有序链表,先让你删除每条链表的倒数第N个节点(这个节点保证存在),然后把所有链表合并成一个有序链表。解:删除倒数第N个节点可以用快慢指针法,要注意的是,这个题目其实要找的是倒数第N+1个节点K,然后这个k->next = k->next->next ,另外,有可能让你删的那个节点正好是头结点,所以可以先在开头加一个 fake 节点,然后返回 fake.next 即可。合并多条有序链表 so easy 不说了题目二:给你两条链表1和2,链表1中的部分节点的值在链表2中也能找到,请在链表1中删除这些节点解:没啥可说的题目三:ACM竞赛题有N个城市(城市1,城市2.....城市N)以及若干条道路,道路的形式为(i,j)表示城市i和城市j之间有道路,现在你可以最多修建2条路来保证城市1可以连通到城市N,修路的费用为(i-j)的平方,请给出最小的修路费用解:不会做第二面面试:问了很多内存相关的问题,包括多CPU读写内存怎么合作,快表查询,进程通讯等等第三面面试:跟上面差不多第四面HR面:问了看机会的原因,对工作压力的看法,对之前工作的看法。然后说可能需要再加一轮技术复试,让我等通知,目前我的进度就卡在这了。 ...查看更多