02 2021 档案
摘要:算法知识树整理 基本算法思想 贪心算法 何理解“贪心算法”? 假设我们有一个可以容纳 100kg 物品的背包,可以装各种物品。我们有以下 5 种豆子,每种豆子的总量和总价值都各不相同。为了让背包中所装物品的总价值最大,我们如何选择在背包中装哪些豆子?每种豆子又该装多少呢? 实际上,这个问题很简单,我
阅读全文
摘要:算法知识树整理 字符串匹配 BF 算法 BF 算法中的 BF 是 Brute Force 的缩写,中文叫作**暴力匹配算法,也叫朴素匹配算法。**从名字可以看出,这种算法的字符串匹配方式很“暴力”,当然也就会比较简单、好懂,但相应的性能也不高。 在开始讲解这个算法之前,我先定义两个概念,方便我后面讲
阅读全文
摘要:数据结构知识树整理 非线性结构 树 什么是“树”? 树”这种数据结构真的很像我们现实生活中的“树”,这里面每个元素我们叫做“节点”;用来连接相邻节点之间的关系,我们叫做“父子关系” 比如下面这幅图,A 节点就是 B 节点的父节点,B 节点是 A 节点的子节点。B、C、D 这三个节点的父节点是同一个节
阅读全文
摘要:算法知识树整理 排序 如何分析一个“排序算法”? 排序算法的执行效率 最好情况、最坏情况、平均情况时间复杂度 时间复杂度的系数、常数 、低阶 比较次数和交换(或移动)次数 排序算法的内存消耗 原地排序(Sorted in place)。原地排序算法,就是特指空间复杂度是 O(1) 的排序算法。 排序
阅读全文
摘要:数据结构知识树整理 线性结构 数组 数组(Array)是一种线性表数据结构。它用一组连续的内存空间,来存储一组具有相同类型的数据。 线性表(Linear List)。顾名思义,线性表就是数据排成像一条线一样的结构。每个线性表上的数据最多只有前和后两个方向。其实除了数组,链表、队列、栈等也是线性表结构
阅读全文
摘要:lua源码分析 数据类型 数据类型的分类 #define LUA_TNONE (-1) //空类型 #define LUA_TNIL 0 //nil #define LUA_TBOOLEAN 1 //布尔 #define LUA_TLIGHTUSERDATA 2//指针 #define LUA_TN
阅读全文
摘要:编程实操 闭包 基础概念 “第一类值” 意味着 Lua 语言中的函数与其他常见类型的值具有同等权限:一个程序可以将某个函数保存到变量中或表中,也可以将某个函数作为参数传递给其他函数,还可以将某个函数作为其他函数的返回值返回。 ”词法定界“ 意味着 Lua 语言中的函数可以访问包含其自身的外部函数中的
阅读全文
摘要:计算机网络知识树整理 OSI模型(开放式系统互联通信参考模型) OSI将计算机网络体系结构(architecture)划分为以下七层: 物理层: 将数据转换为可通过物理介质传送的电子信号 相当于邮局中的搬运工人。 数据链路层: 决定访问网络介质的方式。 在此层将数据分帧,并处理流控制。本层指定拓扑结
阅读全文
摘要:Lua知识树整理 语言基础 lua入门 lua语言中的标识符可以以各种下划线、字母、数字主程,但不能以数字开头 “下画线 大写字母”( VERSION )组成 标识符通常被 语言用作特殊用途,应避免将其用 他用 我通常会将“下画线 +小写字母”用作哑变量'( Dummy variable 以下是 L
阅读全文
摘要:C#常用容器源码浅析 List private static readonly T[] _emptyArray = new T[0]; //默认数组 private const int _defaultCapacity = 4;//如果没给出指定长度默认的列表长度,但是我不得不吐槽一点,定义出来没用
阅读全文
摘要:C#内存管理 对象的基本内存大小 基本类型的内存占用 数据类型 32位 64位 取值范围(32位) char -(没测试) 2 byte 1 1 0~255 sbyte 1 1 –32,768~32,767 ushort 2 2 0~65,535 int 4 4 -2,147,483,648~2,1
阅读全文
摘要:c#基础 C# 1.0 类(Class) 类可以继承 包含属性 包含方法 可以用来创建对象 类的访问权限 Internal:在打dll的时候作用很大,可以控制有些类不然用户访问到 private:用得不多,一般作为内部类存在 public:这个不用多说懂的都懂 抽象类与接口 抽象类中的抽象方法,子类
阅读全文

浙公网安备 33010602011771号