滴滴提前批三面面经
一面
1.oop思想
面向对象思想就是在计算机程序设计过程中,参照现实中事物,将事物的属性特征、行为特征抽象出来,用类来表示。某个事物的一个具体个体称为实例或对象。面向对象编程的核心概念包括类、对象、 封装、继承和多态
2.list和set
3.HashMap和HashTable
4.二叉树左子树节点和
递归属于dfs bfs 层序遍历哪一种 dfs!
二面
1.mysql乐观锁
乐观锁通常使用版本号来实现。每个数据行都有一个版本号,当事务读取数据时,会记录下读取时的版本号,在提交事务时,会检查该版本号是否发生了变化,如果变化了则表示发生了冲突,事务需要进行回滚。
乐观锁是一种相对轻量级的并发控制机制,适用于并发冲突较少的场景,可以提高系统的并发性能。
2.mysql事务隔离级别
3.场景题:抢红包分布式系统 如何实现一人一单
基于数据库的分布式锁、分布式缓存redis的原子操作
4.场景题:如何限制tps
令牌桶算法限流、负载均衡、消息队列、缓存、数据库优化(如索引)
5.令牌桶算法
leetcode15 三数之和
三面主管面
实习拷打
1.mysql悲观锁和乐观锁
悲观锁: 悲观锁假设在整个事务过程中会有并发冲突发生,因此在访问数据之前就会对数据进行加锁,以防止其他事务对数据的修改。主要通过使用SELECT ... FOR UPDATE语句来实现。
乐观锁: 乐观锁则假设在整个事务过程中并发冲突的概率较低,因此不会事先对数据进行加锁,而是在提交事务时检查是否有其他事务对数据进行了修改。主要通过使用版本号或时间戳来实现。
乐观锁的优势在于不需要显式地加锁,减少了锁的开销,但需要在更新数据时进行额外的版本号或时间戳的检查。
悲观锁适用于并发冲突概率较高的场景,适合处理长时间的事务操作;而乐观锁适用于并发冲突概率较低的场景,适合处理短时间的事务操作。
2mysql索引合理性
查询频率、数据量、数据更新频率、索引选择性
反问 滴滴哪些部门有前景、盈利
了解一个公司可以看财报 滴滴国际化主要盈利为金融 出行 外卖配送 在南非国家如巴西建设基础金融支付服务 类似于支付宝微信支付这种业务
1.oop思想
面向对象思想就是在计算机程序设计过程中,参照现实中事物,将事物的属性特征、行为特征抽象出来,用类来表示。某个事物的一个具体个体称为实例或对象。面向对象编程的核心概念包括类、对象、 封装、继承和多态
2.list和set
3.HashMap和HashTable
4.二叉树左子树节点和
递归属于dfs bfs 层序遍历哪一种 dfs!
二面
1.mysql乐观锁
乐观锁通常使用版本号来实现。每个数据行都有一个版本号,当事务读取数据时,会记录下读取时的版本号,在提交事务时,会检查该版本号是否发生了变化,如果变化了则表示发生了冲突,事务需要进行回滚。
乐观锁是一种相对轻量级的并发控制机制,适用于并发冲突较少的场景,可以提高系统的并发性能。
2.mysql事务隔离级别
3.场景题:抢红包分布式系统 如何实现一人一单
基于数据库的分布式锁、分布式缓存redis的原子操作
4.场景题:如何限制tps
令牌桶算法限流、负载均衡、消息队列、缓存、数据库优化(如索引)
5.令牌桶算法
leetcode15 三数之和
三面主管面
实习拷打
1.mysql悲观锁和乐观锁
悲观锁: 悲观锁假设在整个事务过程中会有并发冲突发生,因此在访问数据之前就会对数据进行加锁,以防止其他事务对数据的修改。主要通过使用SELECT ... FOR UPDATE语句来实现。
乐观锁: 乐观锁则假设在整个事务过程中并发冲突的概率较低,因此不会事先对数据进行加锁,而是在提交事务时检查是否有其他事务对数据进行了修改。主要通过使用版本号或时间戳来实现。
乐观锁的优势在于不需要显式地加锁,减少了锁的开销,但需要在更新数据时进行额外的版本号或时间戳的检查。
悲观锁适用于并发冲突概率较高的场景,适合处理长时间的事务操作;而乐观锁适用于并发冲突概率较低的场景,适合处理短时间的事务操作。
2mysql索引合理性
查询频率、数据量、数据更新频率、索引选择性
反问 滴滴哪些部门有前景、盈利
了解一个公司可以看财报 滴滴国际化主要盈利为金融 出行 外卖配送 在南非国家如巴西建设基础金融支付服务 类似于支付宝微信支付这种业务
全部评论
老哥 三面是没有手撕吗
送花
回复 分享
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
查看9道真题和解析
点赞 评论 收藏
分享
05-14 16:41
Universiti Putra Malaysia 计算机类 点赞 评论 收藏
分享
投递蚂蚁集团等公司10个岗位 >
点赞 评论 收藏
分享