美团数开面试

1.讲项目

2.数据结构:

-链表、数组相关的区别及应用场景

内存和逻辑结构

链表:不需要内存中连续空间,插入删除方便,只需要移动指针;不知道数据元素有多少的时候,需要多次插入删除的时候

数组:需要内存连续空间,查找方便;

-贪心算法和动态规划

https://www.cnblogs.com/Joezzz/p/9716193.html

两者推导算法,都是分解成子问题来求解的,都有最优子问题的解

贪心算法:总是选择当前最优的解当做最终解,有时候不能保证局部最优解就是全局最优解;具体,是从根节点开始,选取最优子树(那种显而易见的),之后在最优子树下选择最优的子树……

动态规划:本质是穷举,只是保留每个局部最优解,根据全部的最优解找到最终的最优解;从叶子节点向上走;

-贪心算法在拿纸币时的思路

总是选择最优的,为什么这个问题适合用贪心算法呢,因为最大的面额可以分解为小面额,所以每次拿最大的面额一定是最优的;

用贪心算法需要满足某种规律,比如倍数关系;

二叉搜索树的应用场景

哈夫曼编码(哈夫曼树,最小加权路径);路由器;B+树文件系统;

B+,B树

B树其实是多路二叉树(根结点有两个子结点,其他结点子结点不止两个)平衡排序树

B树:有序数组+平衡多叉树;   B+树:有序数组链表+平衡多叉树;   B*树:一棵丰满的B+树

其他复习:

https://blog.csdn.net/zl_StepByStep/article/details/82766601?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.add_param_isCf&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.add_param_isCf

拓扑排序:目的是对于不稳定排序的一种解决方法:稳定排序法

对于先后顺序优一定的执念,比如:对于大一选了这门课,大二才能选另一门课这样的

其他排序方法:

最短路径:

Dijksstra:是典型的单源最短路径算法,主要用于计算某个点到另一个点的最短路径

算法思路:对一个有向图,求A到D的最短路径,准备一个集合S(已求取最短路径的定点集合),U(未求取最短路径的定点集合)

(1)首先将起点所连通的点中选取最短加权路径的点,加入S中,U中删除;

(2)在S集合中的点所连通的点中选取最短路径(除了已经选过的)的对应点加入集合S,U中删除;

(3)重复步骤二直到所有的点均在S中;

弗洛伊德算法:用于解决任意两点之间的最短距离算法

最小生成树:包含n个顶点,但是只有n-1条边,再加一条边就成环

克鲁斯特算法:

(1)将所有的边排序

(2)每次选择最小的边,边连接的两个点是不同的树(这里将每个顶点单独看做是n棵树)

(3)直到所有的顶点在一棵树

Prim算法:

感觉和迪杰斯特拉算法有点像

(1)将所有的顶点摆好,选路径最小的一条连接

(2)只要不成环,连接到所有的就行

https://blog.csdn.net/a2392008643/article/details/81781766

两个栈实现队列

两个队列实现栈

 

3.计算机网络

TCP三次握手四次挥手;

https://baijiahao.baidu.com/s?id=1654225744653405133&wfr=spider&for=pc(如有违规,烦请联系删除)

 

4.I/O编程

NIO做了什么优化

5.数据库

-InnoDB有什么优势和其他的索引引擎比

数据库事务

原子性(操作的一致性,不会因为数据库故障发生不一致的情况)、隔离性(事务的执行不受其他事务的影响)、一致性(并行执行的操作和顺序执行的操作结果一样)、持久性(已提交的事务保证对数据库的改变不会被丢失)

其中:

一致性、隔离性:主要通过并发控制

原子性、持久性:主要通过日志恢复技术实现;

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值