12.4参加了港大的 CS 上海场面试,对面试准备的历程进行一个小小的总结。

考试分为笔试和面试两个部分,其中笔试考察的范围包含高数、线代、概率等数学知识,还有编程知识的运用,不限定语言,我使用的是python。

面试一方面会对笔试进行一个总结,另一方面根据所选方向问一些问题,氛围总体比较轻松愉快,面试官也比较和善。

我在这次准备的过程中主要使用的复习材料有

往年论坛面筋

高数、线代、概率

leetcode刷题

以下贴上一些准备时写的程序

def chooseBall(N):

if N == 0: return 0

if N == 1: return 1

if N == 2: return 2

if N == 3: return 4

else: return chooseBall(N-1) + chooseBall(N-2) + chooseBall(N-3)

#################

def isSingle(l):

biggest,index = findBiggest(l)

for ind, item in enumerate(l[0 : index]):

if(ind >=1 ):

if(item <= l[ind - 1]):

return False

for ind, item in enumerate(l[index+1: ]):

if(ind >= 1):

if(item >= l[index+1:][ind - 1]):

print(l[index+1:][ind - 1])

return False

return True

def findBiggest(l):

biggest = 0

ind = 0

for index, item in enumerate(l):

if item > biggest: biggest, ind = item, index

else:

continue

return biggest,ind

##############

def divideInteger(N):

if(N == 0): return 0

if(N == 1): return 1

if(N == 2): return 1

if(N == 3): return 2

else: return divideInteger(N-1) + divideInteger(N-3)

################

def Bulb(l,length,n):

for i in range(1, n+1):

for j in range(0, (length // i)): #注意这里求倍数用的方法

l[j * i] = changeStatus(l[j * i])

return l

def changeStatus(item):

if(item == 0): return 1

if(item == 1): return 0

l = [0]*10

print(Bulb(l, 10,9))

#################

def gcd(a, b):

if(b == 0):

return a

else:

return gcd(b, a%b)

def lcm(a, b):

return a * b / gcd(a, b)

print(lcm(2,5))

##############

def isPrime(a):

if(a == 2): return True #注意这里判断的时候一定要把2加上

for i in range(2, a):

if a % i == 0: return False

else: return True

def choosePrime(a, b):

r = []

for k in range(a, b):

if(isPrime(k) == True):

r.append(k)

return r

print(choosePrime(1,10))

如果需要论坛面筋的整理word和高数、线代、概率的知识点总结,欢迎加微信:513824535私聊

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐