240 发简信
IP属地:上海
  • 120
    Handler 常见打开姿势及踩坑分析

    1. 引文 handler 基本定义:先直接看看最权威的官方定义 A Handler allows you to send and process {@link Messag...

  • 插入排序

    1. 基本定义 插入排序的代码实现虽然没有冒泡排序和选择排序那么简单粗暴,但它的原理应该是最容易理解的了,因为只要打过扑克牌的人都应该能够秒懂。 插入排序是一种最简单直观的排...

  • 120
    归并排序

    1. 基本定义 归并排序 (merge sort) 是一类与插入排序、交换排序、选择排序不同的另一种排序方法。归并的含义是将两个或两个以上的有序表合并成一个新的有序表。归并排...

  • 120
    二叉树剪枝

    1. 题目描述 给定二叉树根结点 root ,此外树的每个结点的值要么是 0,要么是 1。返回移除了所有不包含 1 的子树的原二叉树。( 节点 X 的子树为 X 本身,以及所...

  • HashMap Hashtable CurrentHashMap

    1. HashMap JDK 1.7 之前: 底层 数组 + 链表 (链表过大时,查询效率太低,所以有了JDK 1.8 的红黑树)JDK 1.8 以后: 底层数据 + 红黑树...

  • Android 11 已修复该问题,9,10 两个版本解决思路,见文末更新的思路

    webview android 9.0 以上共享文件目录导致的崩溃解决

    bug 参考:https://bugs.chromium.org/p/chromium/issues/detail?id=558377[https://bugs.chromi...

  • 责任链模式

    1. 基本概念 责任链模式(Chain of Responsibility Pattern)为请求创建了一个接收者对象的链。实现了发送者和接收者之间的解耦,属于行为型模式。 ...

  • * 与 & 区别

    基本概念 C++ 是 C 语言的超集。C++ 有一种C 语言不存在的变量类型 --- 引用变量(简成引用)。 指针是存地址的变量,可以指向内存地址。& 应用变量:本质上是指针...

  • 二叉树的层次遍历

    源码 用 栈 的特性(后进先出),来巧妙的控制遍历过程注意LinkedList 是使用链表实现的栈,与数组实现的Stack 用法类似。

  • 有趣的值传递与引用传递

    1. 基本概念 形参:用来定义方法时使用的参数。只有在被调用的时候虚拟机才分配内存空间,调用结束后,释放所分配内存空间。因此生命周期仅仅存在于方法内,针对引用对象的改动无法影...

  • 冒泡法排序

    1. 空间复杂度、 时间复杂度 空间复杂度: 由于仅需要一个临时变量进行值比较交换,空间复杂度 O(1)时间复杂度: 外循环和内循环以及判断和交换元素的时间开销,时间复杂度:...

  • 120
    Android OOM 问题

    1. java 虚拟机模型 2. 关于Android heapsize 的位置 取自android10-c2f2-release platform/dalvik/+/ecl...

  • 120
    设计模式 --- 访问者模式

    1. 基本概念 在访问者模式(Visitor Pattern)中,我们使用了一个访问者类,它改变了元素类的执行算法。通过这种方式,元素的执行算法可以随着访问者改变而改变。这种...