概述 本篇文章会从源码(基于Android 6.0)角度分析Android中View的绘制流程,侧重于对整体流程的分析,对一些难以理解的点加以重点阐述,目的是把View绘制的...
概述 本篇文章会从源码(基于Android 6.0)角度分析Android中View的绘制流程,侧重于对整体流程的分析,对一些难以理解的点加以重点阐述,目的是把View绘制的...
下面来分析一下JobSchedulerService的源码,看一下我们在自定义的JobService中的那些回调方法是怎么被调用的。该文章参考了袁辉辉达摩院的文章 JobSc...
谢谢楼主的分享。经一下午的研究,代码里至少有2个bug。一个13楼已经指出来了,还有一个在“红黑树删除任意节点的代码”的第17行“if (cmp == 0)”。
经过第12行h = leanRight(h)和第16行h = moveRedRight(h);的变换,h有可能不再是原来的那个h,因此第13行和第17行需要重新进行比较。仔细分析后可知(过程略),对于第13行而言,直接用if (cmp == 0 ...)也是没有问题的。问题出在第17行。
proof of correctness:
RedBlackBST<Character, Integer> tree = new RedBlackBST<Character, Integer>();
tree.put('Q', 0);
tree.put('F', 1);
tree.put('Z', 2);
tree.put('A', 3);
tree.put('G', 4);
tree.delete('Q'); // 应该删除结点Q,结果删掉的是结点F
事实上,作者在algs4这个jar包里修正了这两个bug,详见
https://algs4.cs.princeton.edu/code/edu/princeton/cs/algs4/RedBlackBST.java.html
在自定义View时,涉及到View的大小变化时,通常会涉及到一个函数requestLayout(),字面意思大家都知道是要求重新执行View的绘制中的layout,但是req...
一个应用程序当中通常都会包含很多个Activity,每个Activity都是一个具有特定的功能,并且可以让用户进行操作的组件。另外,Activity之间可以相互启动,当前应用...
7月27日:CVTE一面 30分钟(挂) 1.自我介绍2.有没有做过JavaWeb相关的项目?你觉得难点在哪里呢?3.你这个博客系统有没有加权限系统?如果被拦截封包获取了账号...
晚上,我在网上无意间发现了一篇名为“告诉你外语学习的真实方法及误区分析”的文章,作者“漏屋”。当时读了前面一部分就感到非常震憾,于是决定往下研读。读完之后更是醍醐灌顶,更加感...
转载请注明出处!//www.greatytc.com/p/e325578eb512 链表实现 Github源码数组实现 Github源码 如果你需要一个简单而不失优...
引言 之前学习和使用过EXOPlayer,并结合Shared Elements效果在公司的项目中有应用。文章写的很烂直接看github代码吧! 相比EXOPlayer,B站的...
转载请注明出处!//www.greatytc.com/p/d9d9f223f0ad Github源码地址 此篇需要二叉树基本知识,若对二叉树不了解,请移步一篇文章搞...
转载请注明出处!//www.greatytc.com/p/89e5b811cf9c Github源码地址 注:此篇需要链表的构成与数组基础排序相关知识 对于一般的链...
2-3-4 Tree(2-3-4树) 二叉查找树(Binary Search Tree,简称BST)是一棵二叉树,它的左子节点的值比父节点的值要小,右节点的值要比父节点的值大...
deleteMax(Node h)里 h.left = deleteMax(h.left); 写错了
应该是h.right = deleteMax(h.right);
" h.left = deleteMax(h.left); "应该是用于deleteMin(Node h) 函数的
一篇文章搞懂红黑树的原理及实现2-3-4 Tree(2-3-4树) 二叉查找树(Binary Search Tree,简称BST)是一棵二叉树,它的左子节点的值比父节点的值要小,右节点的值要比父节点的值大...
这可能是最好的 RxJava 2.x 入门教程系列专栏文章链接:这可能是最好的 RxJava 2.x 入门教程(完结版)[//www.greatytc.com/p/...