1. 数据结构
线性结构(array/linked list/stack/queue):
array-based sequence,
linked list、链表
stack, queue
非线性结构(tree/heap/priority queue/graph/tries/hashtable/map/AVL/Btree):
[字典散列表和集合]
字典和映射map
映射与哈希hash
顺序映射sorted map
树结构和AVL/Btree,
树-二叉树
树-二叉搜索树
树-多路搜索树和B树
树-堆heap
trie字典树
图-概念和定理
图-实现
图-遍历
图-最小生成树WIP
LRU
各种结构的多种实现方式及性能比较
各数据结构适用的场景
1.1 设计模式Design Pattern
汇总
面向对象设计的SOLID原则
工厂方法和if-else结构
策略模式
模版方法
2. 算法
算法复杂度分析(大O表达)
枚举(enumerate),
排序(online coding case也有若干排序题),
排序 O(n log n)
排序 n
查找Selection(含二分法)
递归(recurrence)和分治,贪婪(背包问题等),动态规划
图的相关算法:
图-最短路径Dijkstra
有向无循环图(DAG)、传递闭包、最小生成树,多阶段决策,背包问题等
Online coding cases,Online Coding Test (C++)
leetcode算法题整理
leetcode-array
双指针法
brainteaser
3. 概率(统计)建模
概率论和组合数学
概率分布
算法工程师/量化分析师面试题:概率题
4. 机器学习
机器学习pipeline
如何做特征选择
数据预处理(datacleaning/standardisation/vectorisation等)
四类算法(回归/关联/聚类/分类regression/association/clustering/classification):
GBT
随机森林
相关问题(model selection /*overfitting*/regularisation/crossvalidation/feature engineering等)
神经网络算法(backprogation/activation function/gradientdescent等)
机器学习问题整理
Kaggle案例分析
数据EDA参考下面的数据分析部分
4.1 Numpy/Pandas数据分析
Numpy基本操作
Pandas数据分析-数据筛选
Pandas数据分析-数据整理
Pandas数据分析-分组和聚合
Pandas数据分析-数据连接join
EDA探索性数据分析和数据预处理
Python处理大数据的技巧
4.2 统计和相关
多重共线性
矩阵论:
符号和基本概念
线性空间和广义逆
特征值的极值
矩阵导数和微商
5. 并行编程
线程(thread)与进程(process)的区别和使用场景(IO bound/CPU bound): 线程基本,
线程间的通信方式(互斥锁mutex/信号量semaphore/条件变量/事件)
线程安全
多线程和同步见Linux部分
并行-线程-Python
异步-协程-yield in Python
异步-协程-asyncio in Python
异步-协程-asyncio基本操作
6. Python的中、高级特性
生成器generator/迭代器iterator
Python动态类型
Python类-元编程Meta programming和装饰器
Python类装饰器
Python类-多继承和MRO
Python类-magic methods魔术方法
Python的几个特性和高效指令
正则表达式: 正则.
闭包
Python logging日志记录
Python同步、异步和协程
并发:参考5 并行变成
Python速度慢和GIL: 参考5线程基本.
Python内存管理
Python OOP, OOP inheritance
Python代码规范
Python import
Python变量
Python实现数据验证
Python实现事件驱动编程
Python虚拟环境的创建
7. Linux
常用操作指令(树莓派实践)
程序和指令、Linux系统内核与架构、Linux文件和文件夹
Shell/bash、文本流、用户和权限、存储、分级存储
进程、进程间通信、多线程和同步、进程调度
函数调用和进程空间、内存、Linux信号
docker、docker与虚拟机的对比
树莓派系统安装和初始化
环境变量
8. 英语
口语
精读(背诵)与泛读结合
写作和语言组织
广泛听(访谈/演讲/影视/talkshow)
9. 表达
对所从事项目和过往经验的表述,吸引面试官的注意和兴趣
10. 数据库和数据工具
SQL数据库标准语言,
SQL变量,SQL触发器,
SQL窗口函数,SQL存储过程,
SQL命令执行顺序
SQL索引,SQL索引-高效能策略
SQL语句优化
数据库的查询流程
数据库存储引擎
数据库事务
数据库分区partitioning
数据库的MVCC
数据库迁移后的验证
关系数据库设计
SQL面试题
NoSQL(MongoDB, Redis等)
Redis为什么快
MongoDB基本
MongoDB聚合和管道
RabbitMQ, Kafka, ES
11 架构
数据高性能
存储高可用
Redis高可用
计算高可用
业务高可用
计算高性能
12. 网络技术
协议
应用层:HTTP,DNS,websocket
传输层:TCP,UDP,可靠数据传输
网络层:网络层
运输层
协议的编程实现: Socket编程
Cookie和Session
RESTful API风格
13. C++
基本指令:
C++脚本如何编译和运行,
C++脚本的执行过程,
指针,
函数,
引用,
类,
构造数据类型、容器和STL
内存管理
面向对象的技术
C++命名空间和作用域限定符
程序员的好习惯
14. 大数据
并行计算(MapReduce)
Spark, HIVE, HBASE and etc.
15. NLP
NLP设置相关问题
16. JAVA
基本:Java变量运算符和表达式
Java对象基础,Java创建类和方法,Java包、接口和其他类特性
Java数组和循环
17. 软件开发
软件开发流程
软件开发流程方法论
软件外包策略和软件开发最佳实践
命名策略
17.1 测试
Python test:unittest
Python test: unittest mock
Python test: unittest mock之AsyncMock
unit test的best practices
Python test: pytest
17.2 CI/CD
CI/CD流程
data pipeline数据流程
K8S基本
YAML格式和K8S设置
Jenkins
Airflow基本
Airflow用于ETL的四种基本运行模式
17.3 Git
Github工作流
Git命令
Git代码冲突的解决流程
17.4 Docker
Docker架构
Docker命令
用Dockerfile为项目创建一个Docker镜像
用Docker-compose为项目创建一个Docker镜像
Docker原理与虚拟环境的对比
18. 前/后端Frontend/Backend
Flask
用Gunicorn部署Flask&Django服务
Django第一个项目、Django基础和背景信息
Django视图、Django模型
Django login、logout等登陆和验证功能
FastAPI基本
用FastAPI构建API/endpoint
19. 计算机组成原理和设计
指令集MIPS
20. 量化
配对交易基于协整
21. 金融和Fintech
证券交易相关概念
FIX开发问题
22. 网络安全
网络安全基本概念
2FA验证
其他
1. 环境配置
Zenburn色彩配置
2. the University of Edinburgh transkill课程
3. 旅行
导游词-自我介绍与开篇
导游词中国雪乡
导游词黑龙江省
导游词五大连池
导游词中央大街
导游词大庆铁人王进喜纪念馆
导游词-结语
导游全国基础知识-党
导游全国基础知识-历史