Android-Interview-Preparation


感觉时间过得很快,转眼就大三了。为了找到一份好实习,我需要制定一份全面的学习计划并且严格执行。这个repository就是我的学习计划,欢迎star和fork,欢迎补充。每个知识点准备好后一般都会发在我的笔记本上:https://github.com/bboylin/MyNotebook

  • datastructure & algorithm

    • 排序
    • 基本数据结构:
      • 栈和队列
      • 堆和优先队列
      • 链表
      • 散列表
      • 斐波那契堆
      • 基本的图算法
        • 深度/广度优先搜索
        • 拓扑排序
        • 强连通分量等概念
      • 最小生成树
        • Kruskal和Prim算法
      • 单源最短路径
        • Bellman-Ford算法
        • 有向无环图中的单源最短路径问题
        • Dijkstra
        • 差分约束和最短路径
      • 所有结对点的最短路径问题
        • 最短路径和矩阵乘法
        • Floyd-Warshall算法
        • 用于稀疏图的Johnson算法
    • 最大流问题
    • 动态规划
    • 贪心算法
      • 哈夫曼编码
      • 调度/装箱问题
    • 摊还分析
    • 随机化算法
    • 回溯
    • 分治
    • 多线程算法
    • 矩阵运算
    • 线性规划
    • 多项式与快速傅里叶变换
    • 数论算法
    • 字符串匹配
  • android

    • android基础总结
    • 四大组件和AIDL
    • Http网络请求
      • 原理
      • 设计与实现
    • 内存泄漏分析
    • sqlite
    • 性能优化
    • 代码规范
    • 单元测试
    • 重构
    • IPC机制
    • Activity和fragment
    • 多线程
      • 消息机制(handler,looper,messageQueue)
      • 多线程和线程池
      • 同步集合
      • 同步锁
      • AsyncTask源码分析
    • view和动画
    • surfaceView
    • bitmap
    • 热修复
    • 初探event bus和RxBus
    • orm
    • RxJava & RxAndroid
    • Picasso源码分析
    • MVP/MVVM架构开发app
    • kotlin
  • java

    • JavaSE(Java基础)

      • Java基础知识
      • 反射
      • Java中的内存泄漏
      • String源码分析
      • Java集合框架
      • ArrayList源码剖析
      • LinkedList源码剖析
      • Vector源码剖析
      • HashMap源码剖析
      • HashTable源码剖析
      • LinkedHashMap源码剖析
    • JVM(Java虚拟机)

    • JavaConcurrent(Java并发)

      • Java并发基础知识
      • 生产者和消费者问题
      • Thread和Runnable实现多线程的区别
      • 线程中断
      • 守护线程与阻塞线程
      • synchronized
      • 多线程环境中安全使用集合API
      • 实现内存可见的两种方法比较:加锁和volatile变量
      • 死锁
      • 可重入内置锁
      • 使用wait/notify/notifyAll实现线程间通信
      • NIO
      • 实现java线程池
  • 设计模式

  • android项目实战

  • 面试/笔试

  • 读书笔记

  • 操作系统