首页
首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
HuYounger
掘友等级
Android开发工程师
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
112
文章 112
沸点 0
赞
112
返回
|
搜索文章
最新
热门
相对友好的红黑树教程
和上篇介绍的 AVL 树一样,红黑树也是一种自平衡的二叉查找树,通过之前的学习我们知道,自平衡的二叉查找树是高效的,它可以在时间复杂度为 O(log n)下做查找、插入和删除。红黑树具备如下性质: 红黑树复杂的地方主要在于对其执行增删操作会破坏上面的红黑属性,因此要有相应的机制…
相对友好的 AVL Tree 教程
要判断这棵树中是否存在 1 。 1 处在这棵树的最底部,并且这个棵树呈现出一边倒的形状,导致找 1 时遍历了所有的节点,这种情况下时间复杂度为 O(n) 。可见一旦二叉搜索树失去了平衡也就失去了效率,理想的二叉搜索树,是树的节点“均匀”分布在根节点两侧,才能满足时间复杂度 O(…
相对友好的 Tree 教程
通过上图可以得到一个直观的感受,就是明显的层级关系。从顶端的 CEO ,到雇佣各种职能人员组成公司,就像一棵 “树” (颠倒的),从根部开始生长,到开枝散叶。在开发中多少都接触过树的概念 ,作为一种数据结构被广泛得应用在各种计算机语言中,了解它的设计思想对日后的开发是非常有帮助…
图解RxJava2(一)
从这篇文章开始,系统地学习RxJava2设计思想和源码实现。说起大热门RxJava,网上有很多例如响应式编程、观察者模式等介绍,也有一些优秀的文章以上、下游等概念引初学者入门,在初步学习之后,可能感觉有所收获,但是总觉得不够解渴,要真正知晓其原理,还得结合源码加深理解。 通过生…
图解RxJava2(二)
在 RxJava 中可以通过 subscribeOn/observeOn 很方便地完成上下游指定线程的切换,日常开发除了一些常用的Rx 操作符外,这两个方法也是打交道最多的。最初学习 RxJava 的时候总是死记硬背:subscribeOn 用于指定上游线程,observeOn…
图解ConcurrentHashMap
Concurrent翻译过来是并发的意思,字面理解它的作用是处理并发情况的 HashMap,在介绍它之前先回顾下之前的知识。通过前面两篇学习,我们知道多线程并发下 HashMap 是不安全的(如死循环),更普遍的是多线程并发下,由于堆内存对于各个线程是共享的,而 HashMap…
图解HashMap(二)
上篇分析了HashMap的设计思想以及Java7和Java8源码上的实现,当然还有一些"坑"还没填完,比如大家都知道HashMap是线程不安全的数据结构,多线程情况下HashMap会引起死循环引用,它是怎么产生的?Java8引入了红黑树,那是怎么提高效率的?本篇先填第一个坑,还…
图解HashMap(一)
HashMap是日常开发中经常会用到的一种数据结构,在介绍HashMap的时候会涉及到很多术语,比如时间复杂度O、散列(也叫哈希)、散列算法等,这些在大学课程里都有教过,但是由于某种不可抗力又还给老师了,在深入学习HashMap之前先了解HashMap设计的思路以及以及一些重要…
Dagger2从入门到补胎(二)
继续学习在代码中会看到的标注:@Named、@Qualifier、@Singleton、@Scope。这四个标注包括之前学的@Inject其实不是在dagger的包中,而是javax-inject包中: 心路历程是这样的,MainActivity.java作为依赖需求方,编译生…
Dagger2从入门到补胎(一)
最近公司的项目是用mvp+dagger2搭的框架,由于之前没接触过dagger2,改bug和做需求总是一脸懵逼,看了些文档介绍,和大多数学习者一样从Dependency Injection、注解概念等等开始了解,然后敲代码上手,在此记录下学习心得。既然是入门,那些概念和注解的历…
下一页
个人成就
文章被点赞
777
文章被阅读
49,446
掘力值
2,198
关注了
2
关注者
277
收藏集
0
关注标签
1
加入于
2015-10-06