富途python面试

a[]={21,11,45,56,9,66,77,89,78,68,100,120,111}
请查询数组中有没有比它前面元素都大,比它后面的元素都小的数,没有打印-1,有显示其索引。要求时间复杂度和空间复杂度最大都是O(N)。

1
2
3
4
5
6
7
8
9
10
11
12
#[面试题]乱序数组中找比左边都小比右边都大的数
data = [3,4,2,0,1]

def findPos(data):
for i in range(1, len(data)-1):
minLeft = min(data[:i])
maxRight = max(data[i+1:])
if data[i] < minLeft and data[i] > maxRight:
return i
return -1

print(findPos(data))

https://zhuanlan.zhihu.com/p/74769677

10.排序算法简述(常用的冒泡插入选择堆快排归并)说流程,说时间空间复杂度,说改进
https://blog.csdn.net/weixin_41571493/article/details/81875088

5.设计模式举例,单例模式举例

https://blog.csdn.net/Burgess_zheng/article/details/86762248

  1. 实现一个单例模式
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
class Singleton(object):
_instance_lock = threading.Lock()

def __init__(self):
pass

def __new__(cls, *args, **kwargs):
if not hasattr(Singleton, "_instance"):

with Singleton._instance_lock:
if not hasattr(Singleton, "_instance"):
Singleton._instance = object.__new__(cls)

return Singleton._instance

1
2
3
4
5
6
7
8
9
10
class Sun:
# 定义类属性
__instance = None
def __new__(cls, *args, **kwargs):
# 如果__instance还没有值,就给__instance变量赋值
if not cls.__instance:
cls.__instance = object.__new__(cls)
return cls.__instance
else:
return cls.__instance

3.python 进程线程区别
4.python 多线程通信
5.python 多进程通信

6.集合类的理解
7.堆栈区别
8.TCP UDP HTTP
9.智力题 老鼠喝毒药
11.算法题:二叉树中最长路径(递归)——本地IDE写完了发给他文件

11.二叉树的理解(二叉搜索树,AVL树,B树,B+树)

13.智力题 随机数生成器,只生成0,1,但是不公平,做一个公平的方案? ()01为0,10为1,其余重来。一开始想多了,后来简化了。
14.算法题:删除单链表的倒数第N个节点,返回新链表(剑指offer原题,快慢指针)——不过我用了一个for和一个while,可以更简化用一个while就好,当时也是让我优化,我一时没反应过来。。。。

Python基础和算法,
问答
算法题。
MySQL的问题,像是索引、乐观锁悲观锁、语句执行慢怎么优化等
MySQL,包括事务、锁(表锁、行锁)、怎么实现乐观锁、索引结构等。

手写算法题,将[1,[2,3],[4,[5,6]]]这样的列表,输出[1,2,3,4,5,6]这样的格式。
二面:模拟出扫雷游戏,在二维矩阵内随机生成地雷,同时在每个单元格标记出周围九宫格内的地雷数,最后返回这个矩阵。

针对算法题的随机生成地雷,
如果要求生成的地雷数比较多,怎么才能避免做重复的随机?
我回答的是用元组单独存储坐标,(x,y),每次从这个元组列表中随机挑选出一个点来作为地雷,这样可以避免无效的随机。

三面:给了一个抽奖的场景,假如有一等奖5个,二等奖10个,三等奖20个,参与奖若干个,每个用户只能参与一次,从前端访问后端,该怎么设计?
包括前端提交什么数据,格式是什么;
后端怎么处理数据,数据表怎么设计等。

针对你给的答案,面试官还会进行追问,主要是考察Web安全、系统设计等能力。针对我实现的抽奖逻辑,也重点进行了提问,包括怎么优化能让抽奖结果比较公平?奖品的库存该怎么减?然后是针对简历中的项目进行询问,

https://www.kanzhun.com/firm/interview/detail/1nV-2Ny0FFY~.html?ka=com-interview-card-click