hello,大家好,欢迎大家来到这里,能来到这里,证明是一种缘分。
下面我先简单介绍一下自己。
我目前是一名程序员,Android 高级工程师,17 年毕业,从实习到现在,一直从事在 Android 开发,目前在广州。
-
CSDN 博客专家,访问量 113 万+,原创 130+
-
从毕业开始,一直在中大厂工作,典型的比上不足,比下有余。哈哈。
这几年开,我是站在巨人的肩膀上成长起来的,同样,我也希望成为你们的巨人。觉得不错的话可以关注一下我的微信公众号程序员徐公。主要分享
- Android 开发相关知识:包括 java,kotlin, Android 技术。
- 面试相关分享:包括常见的面试题目,大厂面试真题、面试经验套路分享。
- 算法相关学习笔记:比如怎么学习算法,leetcode 常见算法总结,跟大家一起学习算法。
- 时事点评:主要是关于互联网的,比如小米高管屌丝事件,拼多多女员工猝死事件等
- 公众号回复“黑马”两字,可以获得 Android 学习视频。回复 ”java“ 两字,可以获得 java 学习视频。
希望我们可以成为朋友,成长路上的忠实伙伴!
目录如下
Android 启动优化(七) - JetPack App Startup 使用及源码浅析
Android 启动优化(五)- AnchorTask 1.0.0 版本正式发布了
Android 启动优化(四)- AnchorTask 是怎么实现的
Android 启动优化(三)- AnchorTask 开源了
Android 启动优化(二) - 拓扑排序的原理以及解题思路
java 源码系列 - 带你读懂 Reference 和 ReferenceQueue
Android Fragment 的妙用 - 优雅地申请权限和处理 onActivityResult
TextView AutoLink, ClikSpan 与长按事件冲突的解决
Android 自定义 MarqueeView 实现跑马灯 —— 原理篇
Rxjava 2.x 源码系列 - 变换操作符 Map(上)
java 源码系列 - 带你读懂 Reference 和 ReferenceQueue
面试官系列 - https 真的安全吗,可以抓包吗,如何防止抓包吗
Android 面试必备 - http 与 https 协议
Android 面试必备 - 计算机网络基本知识(TCP,UDP,Http,https)
Android 面试必备 - 系统、App、Activity 启动过程
常见的链表翻转,字节跳动加了个条件,面试者高呼「我太难了」| 图解算法
刚开始准备刷算法题目的时候,感觉真的是好难,十道题目有九道是不会的。心中曾一万只草泥马跑过,自己怎么这么辣鸡。
慢慢得,我发现算法也是一个可以通过练习慢慢成长的。
- 首先我们要掌握基本的数据结构,数组,链表,哈希表, Set,二叉树,堆,栈等。你要知道他们有什么优缺点,适应场景是什么,时间复杂度和空间复杂度是多少。而不能知道简单的 API。
- 接着,掌握了这些基本的数据结构之后,一些基本的算法你也要掌握以下,比如快速排序,归并排序,对排序,二分查找。这些基本的一定要掌握,面试当中经常也会问到。
- 分类刷题,我们在力扣上面可以看到,https://leetcode-cn.com/problemset/algorithms/ ,刷题是可以按标签来的。比如链表,数组,二分查找,二叉树,动态规划等
- 学好算法不是一日之功,需要长期的积累。建议的做法是每天做一两道题,题目不在多,贵在于理解。坚持一两个月,你会发现你的感觉逐渐好起来了
最后,让我们一起加油,一起进大厂,拿期权,高薪。
- 【Java】剑指offer(1)找出数组中重复的数字.md
- 【Java】剑指offer(2)不修改数组找出重复的数字.md
- 【Java】剑指offer(3)二维数组中的查找.md
- 【Java】剑指offer(4)替换空格.md
- 【Java】剑指offer(5)从尾到头打印链表.md
- 【Java】剑指offer(6)重建二叉树.md
- 【Java】剑指offer(7)二叉树的下一个结点.md
- 【Java】剑指offer(8)用两个栈实现队列.md
- 【Java】剑指offer(9)斐波那契数列及青蛙跳台阶问题.md
- 【Java】剑指offer(10)旋转数组的最小数字.md
- 【Java】剑指offer(11)矩阵中的路径.md
- 【Java】剑指offer(12)机器人的运动范围.md
- 【Java】剑指offer(13)剪绳子.md
- 【Java】剑指offer(14)二进制中1的个数.md
- 【Java】剑指offer(15)数值的整数次方.md
- 【Java】剑指offer(16)打印1到最大的n位数.md
- 【Java】剑指offer(17)在O(1)时间删除链表结点.md
- 【Java】剑指offer(18)删除链表中重复的结点.md
- 【Java】剑指offer(19)正则表达式匹配.md
- 【Java】剑指offer(20)表示数值的字符串.md
- 【Java】剑指offer(21)调整数组顺序使奇数位于偶数前面.md
- 【Java】剑指offer(22)链表中倒数第k个结点.md
- 【Java】剑指offer(23)链表中环的入口结点.md
- 【Java】剑指offer(24)反转链表.md
- 【Java】剑指offer(25)合并两个排序的链表.md
- 【Java】剑指offer(26)树的子结构.md
- 【Java】剑指offer(27)二叉树的镜像.md
- 【Java】剑指offer(28)对称的二叉树.md
- 【Java】剑指offer(29)顺时针打印矩阵.md
- 【Java】剑指offer(30)包含min函数的栈.md
- 【Java】剑指offer(31)栈的压入、弹出序列.md
- 【Java】剑指offer(32)从上往下打印二叉树.md
- 【Java】剑指offer(33)二叉搜索树的后序遍历序列.md
- 【Java】剑指offer(34)二叉树中和为某一值的路径.md
- 【Java】剑指offer(35)复杂链表的复制.md
- 【Java】剑指offer(36)二叉搜索树与双向链表.md
- 【Java】剑指offer(37)序列化二叉树.md
- 【Java】剑指offer(38)字符串的排列.md
- 【Java】剑指offer(39)数组中出现次数超过一半的数字.md
- 【Java】剑指offer(40)最小的k个数.md
- 【Java】剑指offer(41)数据流中的中位数.md
- 【Java】剑指offer(42)连续子数组的最大和.md
- 【Java】剑指offer(43)从1到n整数中1出现的次数.md
- 【Java】剑指offer(44)数字序列中某一位的数字.md
- 【Java】剑指offer(45)把数组排成最小的数.md
- 【Java】剑指offer(46)把数字翻译成字符串.md
- 【Java】剑指offer(47)礼物的最大价值.md
- 【Java】剑指offer(48)最长不含重复字符的子字符串.md
- 【Java】剑指offer(50-1)字符串中第一个只出现一次的字符.md
- 【Java】剑指offer(50-2)字符流中第一个只出现一次的字符.md
- 【Java】剑指offer(51)数组中的逆序对.md
- 【Java】剑指offer(52)两个链表的第一个公共结点.md
- 【Java】剑指offer(53-1)数字在排序数组中出现的次数.md
- 【Java】剑指offer(53-2)0到n-1中缺失的数字.md
- 【Java】剑指offer(53-3)数组中数值和下标相等的元素.md
- 【Java】剑指offer(54)二叉搜索树的第k个结点.md
- 【Java】剑指offer(55-1)二叉树的深度.md
- 【Java】剑指offer(55-2)平衡二叉树.md
- 【Java】剑指offer(56-1)数组中只出现一次的两个数字.md
- 【Java】剑指offer(56-2)数组中唯一只出现一次的数字.md
- 【Java】剑指offer(57-1)和为s的两个数字.md
- 【Java】剑指offer(57-2)为s的连续正数序列.md
- 【Java】剑指offer(58-1)翻转单词顺序.md
- 【Java】剑指offer(58-2)左旋转字符串.md
- 【Java】剑指offer(59-1)滑动窗口的最大值.md
- 【Java】剑指offer(59-2)队列的最大值.md
- 【Java】剑指offer(60)n个骰子的点数.md
- 【Java】剑指offer(61)扑克牌的顺子.md
- 【Java】剑指offer(62)圆圈中最后剩下的数字.md
- 【Java】剑指offer(63)股票的最大利润.md
- 【Java】剑指offer(64)求1+2+…+n.md
- 【Java】剑指offer(65)不用加减乘除做加法.md
- 【Java】剑指offer(66)构建乘积数组.md
- 【Java】剑指offer(67)把字符串转换成整数.md
- 【Java】剑指offer(68)树中两个结点的最低公共祖先.md