Golang Container.Heap 使用
12345678910111213type hp []*ListNode func (h hp) Len() int { return len(h) } func (h hp) L ...
Go语言 Slice 结构的底层实现
append 性能损耗未指定长度或者长度不足时,双倍扩容(cap < 1024); 1.25倍扩容(cap > 1024)。把元内存空间的数据拷贝过来,然后在新的内存空间继续append数 ...
Go语言 Map 结构的底层实现
Golang 中的 map 详解一、什么是 map?1、map 的定义 在计算机科学里,被称为相关数组、map、符号表或者字典,是由一组 <key, value> 对组成的抽象数据结构, ...
Go设计模式12-享元模式
按照课程中的例子来理解,就是象棋棋子作为享元,可以被所有的对局共享,以达到减少内存的目的
Go设计模式11-组合模式
比较简单的例子是 人员架构中 部门和人员的关系,二者可以形成简单的树形接口,部门中规定了一些功能;而人员又有自己的基本属性功能
Go设计模式10-门面模式
简单来理解就是 有登录和注册两个基础功能,对外统一封装成 登录&注册,上层调用无需知道具体调用的逻辑,只通过一个接口获取登录状态即可
Go设计模式09-适配器模式
简单理解是有两个不同的业务系统,需要同时完成同一种业务动作,可以封装后统一提供给上层调用