70

GitHub - randian666/algorithm-study: hello world

 5 years ago
source link: https://github.com/randian666/algorithm-study
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

README.md

enter image description here

? ? ? ? ? ? ? ? ? ? ? ? JAVA基础 JVM知识 开源框架知识 操作系统知识 多线程与并发 TCP与HTTP 架构设计与分布式 数据结构与算法 数据库 消息队列 缓存 搜索

JAVA基础

JVM知识

开源框架知识

操作系统

多线程与并发

TCP与HTTP

架构设计与分布式

数据结构与算法

  • 10亿个数字里里面找最小的10个。
  • 有1亿个数字,其中有2个是重复的,快速找到它,时间和空间要最优。
  • 2亿个随机生成的无序整数,找出中间大小的值。
  • 给一个不知道长度的(可能很大)输入字符串,设计一种方案,将重复的字符排重。
  • 遍历二叉树。
  • 有3n+1个数字,其中3n个中是重复的,只有1个是不重复的,怎么找出来。
  • 写一个字符串(如:www.jd.cn)反转函数。
  • 常用的排序算法,快排,归并、冒泡。 快排的最优时间复杂度,最差复杂度。冒泡排序的优化方案。
  • 二分查找的时间复杂度,优势。
  • 一个已经构建好的TreeSet,怎么完成倒排序。
  • 什么是B+树,B-树,列出实际的使用场景。
  • 一个单向链表,删除倒数第N个数据。
  • 200个有序的数组,每个数组里面100个元素,找出top20的元素。
  • 单向链表,查找中间的那个元素。
  • 剑指Offer学习【所有面试题汇总】

数据库

  • MySQL数据库的索引原理、与慢SQL优化的5大原则
  • 数据库隔离级别有哪些,各自的含义是什么,MYSQL默认的隔离级别是是什么。
  • MYSQL有哪些存储引擎,各自优缺点。
  • 高并发下,如何做到安全的修改同一行数据。
  • 乐观锁和悲观锁是什么,INNODB的标准行级锁有哪2种,解释其含义。
  • SQL优化的一般步骤是什么,怎么看执行计划,如何理解其中各个字段的含义。
  • 数据库会死锁吗,举一个死锁的例子,mysql怎么解决死锁。
  • MYsql的索引原理,索引的类型有哪些,如何创建合理的索引,索引如何优化。
  • 聚集索引和非聚集索引的区别。
  • select for update 是什么含义,会锁表还是锁行或是其他。
  • 为什么要用Btree实现,它是怎么分裂的,什么时候分裂,为什么是平衡的。
  • 数据库的ACID是什么。
  • 某个表有近千万数据,CRUD比较慢,如何优化。
  • Mysql怎么优化table scan的。
  • 如何写sql能够有效的使用到复合索引。
  • mysql中in 和exists 区别。
  • 数据库自增主键可能的问题。
  • MVCC的含义,如何实现的。
  • 你做过的项目里遇到分库分表了吗,怎么做的,有用到中间件么,比如sharding jdbc等,他们的原理知道么。
  • MYSQL的主从延迟怎么解决。
  • 数据库面试问题集锦

消息队列

  • 消息队列的使用场景。
  • 消息的重发,补充策略。
  • 如何保证消息的有序性。
  • 用过哪些MQ,和其他mq比较有什么优缺点,MQ的连接是线程安全的吗,你们公司的MQ服务
  • 架构怎样的。
  • MQ系统的数据如何保证不丢失。
  • rabbitmq如何实现集群高可用。
  • kafka吞吐量高的原因。
  • kafka架构和原理
  • 利用mq怎么实现最终一致性。
  • 使用kafka有没有遇到什么问题,怎么解决的。
  • MQ有可能发生重复消费,如何避免,如何做到幂等。
  • MQ的消息延迟了怎么处理,消息可以设置过期时间么,过期了你们一般怎么处理。

缓存

  • Redis的高并发和快速原因
  • 常见的缓存策略有哪些,如何做到缓存(比如redis)与DB里的数据一致性,你们项目中用到了
  • 什么缓存系统,如何设计的。
  • 如何防止缓存击穿和雪崩。
  • 缓存数据过期后的更新如何设计。
  • redis的list结构相关的操作。
  • Redis的数据结构都有哪些。
  • Redis的使用要注意什么,讲讲持久化方式,内存设置,集群的应用和优劣势,淘汰策略等。
  • 当前redis集群有哪些玩法,各自优缺点,场景。
  • Memcache的原理,哪些数据适合放在缓存中。
  • redis和memcached 的内存管理的区别。
  • Redis的并发竞争问题如何解决,了解Redis事务的CAS操作吗。
  • Redis的选举算法和流程是怎样的。
  • redis的持久化的机制,aof和rdb的区别。
  • redis的集群怎么同步的数据的。
  • 知道哪些redis的优化操作。
  • Reids的主从复制机制原理。
  • Redis的线程模型是什么。
  • 请思考一个方案,设计一个可以控制缓存总体大小的自动适应的本地缓存。
  • 如何看待缓存的使用(本地缓存,集中式缓存),简述本地缓存和集中式缓存和优缺点。
  • 本地缓存在并发使用时的注意事项。
  • redis面试49题

搜索


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK