GithubHelp home page GithubHelp logo

hhy5277 / androidmore Goto Github PK

View Code? Open in Web Editor NEW

This project forked from qizewei/androidmore

0.0 1.0 0.0 340 KB

Android高级工程师成长之路:手写算法,数据结构 和 Android源码笔记

License: Apache License 2.0

Java 100.00%

androidmore's Introduction

Android高级工程师的成长之路

数据结构

  1. 数据结构:数据之间相互存在的一种或多种特定关系的元素的集合。
  2. 逻辑结构分类:集合结构,线性结构,树形结构,图形结构。
  3. 物理结构分类:顺序存储,链式存储 。

Android中主要数据结构的伪代码,注重思路和实现方式,笔记和重点在代码中有注释
ArrayList(顺序存储方式线性表)
LinkedList(链式存储方式线性表)
Queue(队列)
Stack(栈)
HashMap(哈希表)
LinkedHashMap(链式哈希表)
Tree(树)
Graph(图-邻接表的实现)
Graph(图-邻接矩阵的实现)
Graph(图-深度优先遍历,广度优先遍历)
Graph(图-最小生成树的两种算法:普利姆算法,克鲁斯卡尔算法)
Graph(图-最短路径:迪杰斯特拉算法)
Graph(图-拓扑排序)

算法:

算法优劣评定:时间复杂度(相同时间下执行的指令少),空间复杂度(消耗的内存大小),正确性,可读性,健壮性。

各个算法的实现,均通过单元测试

排序算法

冒泡排序
堆排序
插入排序
归并排序
快速排序
选择排序
希尔排序
基数排序

查找算法

线性查找
二分查找

算法**及案例

穷举**案例:泊松分酒
递归**案例:汉诺塔问题
递归**案例:最大公约数问题
动态规划法**案例:最长公共子序列 + 最长公共子串问题
回溯法**案例:八皇后问题
分治法**案例:球队比赛排列问题 + L型骨牌问题
贪心算法案例:背包问题

其他算法

约瑟夫问题
大数相乘问题

Android:

01-线程和进程
02-Android IPC
03-Binder的原理
04-Activity_知识点
05-View的绘制
06-消息队列
07-Service难点
08-Window相关
09-AOP编程
10-RxJava 和 Retrofit 的工作原理
11-Activity的启动流程
12-Android 中的 ClassLoader

Jetpack

Jetpack系列,从使用入门讲解 到 源码解析工作原理

01-Jetpack系列 - Lifecycle从入门到源码
02-jetpack系列 - ViewModel从入门到源码
03-jetpack系列 - LiveData从入门到源码
04-jetpack系列 - Palette(调色板)入门使用指南

联系方式

掘金:https://juejin.im/user/57fdc5ef2e958a0055a39ee2/posts
CSDN:https://blog.csdn.net/qizewei123
E-mail:[email protected]
微信:779754469

androidmore's People

Contributors

17190171303 avatar qizewei avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.