iOS小生活

148 篇文章
152.7K 次阅读
34 人订阅

全部文章

拉维

数据结构与算法(十一)——线索化二叉树&哈夫曼树

如上图所示,是一个二叉树。可以看到,每一个节点都有三个元素:左子指针域、右子指针域、值域。对于存在左右子树的节点,其左右指针域指向的分别是各自的左右子节点;而对...

14260
拉维

数据结构与算法(十)——二叉树初探

树是具有N(N>=0)个节点的有限集。树中可以没有任何节点(空树),也可以只有一个根节点(如上图左侧),也可以有多个节点(如上图右侧)。

6020
拉维

数据结构与算法(九)——字符串的匹配算法

有一个主串S = {a, b, c, a, c, a, b, d, c},模式串T = { a, b, d } ,请找到模式串在主串中第一次出现的位置。 提示:...

8620
拉维

数据结构与算法(八)——栈思想下的算法题目解析

假设表达式中允许包含两种括号:圆括号与方括号,其嵌套顺序随意,即([]())或者[([][])]都是正确的,而[(]或者(()])或者([())都是不正确的格...

5620
拉维

数据结构与算法(七)——队列结构

如上图所示,在队列头部出队列,在对列尾部入队列。在队列的结构中,有四个要素:队列头、队列尾、队列长度、队列内容。

5240
拉维

数据结构与算法(六)——栈结构

栈和队列属于逻辑结构中的线性结构,也就是说,栈和队列在本质上就是属于线性表。但是栈和队列与一般的线性表相比,其特殊性就在于它们在元素读取的基本操作上面是不一样的...

8320
拉维

数据结构与算法(五)——链表相关算法题目

前面几篇文章主要是讲了线性表,线性表是四种逻辑结构(集合结构、线性结构、树结构、图结构)的一种。任何一种逻辑结构,都是通过两种物理结构(顺序存储、链式存储)来在...

11280
拉维

数据结构与算法(四)——双向链表&双向循环链表

此时,比如我已经获取到了C节点,那么我想要获取到C节点的前一个节点,就需要再次遍历该链表,且时间复杂度是O(n)。那么有没有一个好的方案可以便捷地获取到C的前一...

6020
拉维

数据结构与算法(三)——单项循环链表

上面?这种初始化链表的方式,每一次都需要通过循环遍历来获取到链表的尾结点。为了优化算法的时间复杂度,我通过一个临时变量来记录链表的尾结点,这样就不需要每次都再循...

6410
拉维

数据结构与算法(二)——线性表

所谓顺序存储,就是开辟一段连续的内存空间来存储。因此,线性表的顺序存储,其逻辑相邻,物理存储地址也相邻。

5220
拉维

数据结构与算法(一)

数据与数据之间是一对一的关系。凡是符合一对一关系的结构都是线性结构,比如线性表、队列、栈、数组、字符串等。

11330
拉维

Flutter混合工程的自动化

在《Flutter与原生工程的混合开发》中,我介绍了Flutter工程与Native工程的混合开发,今天我们来聊一聊混合工程的自动化。

5820
拉维

Flutter的热重载原理

Flutter的热重载功能,想必诸位都已经使用过好多次了。它的使用流程很简单,终端输入r或者R即可;但是其内部实现是非常复杂的,今天这篇文章,我们就是通过下断点...

7830
拉维

Flutter中的插件开发(Package&Plugin)

实际上,Plugin就是一个特殊的Package。Package是一个纯Dart包,它里面封装了一个纯Dart的功能组件,可以将其理解成是一个Widget;而P...

8010
拉维

Channel的原理探究

在上一篇文章《Flutter引擎——下载、编译和调试》中,我们已经可以调试引擎代码了;而在《Flutter与原生工程的混合开发》中,我们使用到了FlutterM...

8330
拉维

Flutter引擎——下载、编译和调试

我们打开一个Flutter工程,找到iOS文件夹,点开Runner.xcworkspace工程,找到products文件夹下面的Runner.app:

11841
拉维

Flutter中的Key详解(补充)

本文是对Flutter中的Key详解的补充,建议读本文前先读完Flutter中的Key详解。

9230
拉维

Widget的生命周期和渲染原理

关于生命周期,我之前写过一篇文章总结过:提到生命周期,我们是在说什么?今天这个篇幅是以此文章为基准,再做一些补充。

8620
拉维

使用InheritedWidget来进行状态管理

之前我写过一篇文章使用Provider来进行状态管理,介绍了在Flutter中如何通过Provider来进行状态管理,今天我们来介绍状态管理的另外一种方式——I...

6020
拉维

Dart中的异步和多线程(补充)

这个例子中,_testMethod里面有5个异步任务,每一个异步任务后面都跟有一个then。乍一看,我的结论是每个异步任务执行完毕之后就会紧接着执行该异步任务后...

9520

扫码关注云+社区

领取腾讯云代金券