Golang 标准库:context
context 包定义了 Context 类型,可以用来跨进程传输信息、帮助 API 传输数据,并且可以携带 deadlines 或者 cancellation 信号
愿背井离乡、追寻梦想的你归来仍是少年
context 包定义了 Context 类型,可以用来跨进程传输信息、帮助 API 传输数据,并且可以携带 deadlines 或者 cancellation 信号
结构型设计模式之一,允许向一个现有对象添加新功能,同时又不改变其结构
结构型设计模式主要用于描述对象之间的组合,通过对象间的组合来完成特定功能。
最简单的创建型设计模式之一,对外提供全局唯一的对象
单例模式是最简单的设计模式之一,属于创建型,提供了一种创建全局唯一对象的方法。
创建型设计模式之一,适用于创建新对象成本比较高的场景,通过 clone 现有对象来创建新对象,以此降低成本
原型模式用于创建重复的对象,该重复对象的创建成本比较高,所以原型模式通过 clone 现有对象来完成。
创建型设计模式之一,适用于创建对象由多个步骤组成的类型,防止构造函数无限扩大
构建器模式用来创建复杂的对象,该复杂对象由多个步骤构建而来。
常用的基础算法之一,用于将很难处理的大问题,拆解成小问题处理,然后合并小问题的解,得到大问题的解
分治法的思想就是将不可能或者很难解决的问题,拆解成多个相似的子问题,然后将子问题拆解成更小粒度的子问题,直到这些小问题可以很容易的被解决,然后合并这些小问题的解以得到最终的解。
常用的基础算法之一,思想类似于分治法,不同点是子问题之间存在依赖,用来处理多阶段决策类问题
动态规划的思想类似于分支法,也是将待处理的问题拆分成多个子问题,按顺序求解子问题,前一个子问题的解为后一个子问题的求解提供了有用的信息。
常用的基础算法之一,用于求最优解,但不一定能得到全局最优解
贪心算法是在求解问题的时候,总是选择当前最优的解,不考虑全局最优解。
常用的基础算法之一,被称为通用解题方法
回溯算法其实是一种枚举算法(穷举法),是一种暴力解法,时间复杂度比较高。
AVL 树是一种高度平衡的二叉搜索树
最早出现的是二叉树,随后人们发现二叉树可以用来二分查找,所以出现了二叉搜索树。