Shopee 2021春招后端一面新鲜回忆录
(⑉・̆-・̆⑉)
准备(基本是零准备)
在笔试过了后我成功地忽略了点击虾皮的面试邀请,导致差点凉了,好在HR给我预约了今天下午四点的面试。关于准备的详情可以查看同时写的鹅厂兄弟篇,上午鹅厂准备的啥下午就准备的啥(其实可以不看,因为我基本啥也没准备),我上午面试完去打疫苗,打完疫苗去吃午饭,吃完午饭去睡午觉,一觉醒来就第二个面试了😂。
面试内容为 自我介绍 + 问答环节 + 编程 * 3
自我介绍
反正我是全程谦逊的小绵羊🐑,毕竟面你的都是大佬,所以就讲了一下自己的教育背景和项目经验(我没有说全,不过面试官没有反馈,感觉这只是走个流程)
问答
# 按题号顺序
- 哈希冲突(回答不知道…)
- 事务的四大特性ACID
- HTTP的GET/POST请求的区别
- 进程和线程
- Python闭包(也不知道)
编程
""" 第一题:两个栈实现一个队列 """
class Solution: def __init__(self): self.stackIn = [] self.stackOut = [] def push(self, a): self.stackIn.append(a) def pop(self): if not self.stackOut: while self.stackIn: self.stackOut.append(self.stackIn.pop(-1)) return self.stackOut.pop(-1)
solution = Solution() solution.push(1) print(solution.stackIn) solution.push(2) print(solution.stackIn) solution.push(3) print(solution.stackIn) solution.pop() # pop的过程感觉有问题,pop一次全弹出来了 print(solution.stackIn) solution.pop() print(solution.stackIn) solution.pop() print(solution.stackIn) solution.push(4) print(solution.stackIn) solution.push(5) print(solution.stackIn) solution.pop()
""" 第二题:lambda匿名函数表达奇数 """
lambda x: x%2 != 0
""" 第三题:合并两个有序数组 """
class Solution(object): def merge(self, nums1, m, nums2, n): # m=len(nums1), n=len(nums2) while m>0 and n>0: if nums1[m-1]>=nums2[n-1]: nums1[m+n-1]=nums1[m-1] m -= 1 else: nums1[m+n-1]=nums2[n-1] n -= 1 if m == 0: for i in range(n): nums1[i]=nums2[i]