阅读本文大概需要5分钟本文我们主要来回忆一下几个基础的排序算法:冒泡排序、选择排序和插入排序。已经成为大牛的你,还记得当初这几个经典的排序算法吗?1.冒泡排序冒泡排序算法运行起来非常慢,但在概念上它是排序算法中最简单的,因此冒泡排序算法在刚开始研究排序技术时是一个非常好的算法。冒泡排序算法的基本流程是:每一轮从头开始两两比较,将较大的项放在较小项的右边,这样每轮下来保证该轮最大的数在最右边。算法程
分类:
编程语言 时间:
2020-11-10 11:37:53
阅读次数:
20
深入浅出Redis持久化机制导读:Redis是最常用的高性能Nosql内存数据库,一旦服务器进程退出,数据库的数据就会丢失,为了解决这个问题,Redis提供了持久化方案,将内存中的数据保存到磁盘中,避免数据的丢失。本文作者通过深入解读Redis源代码,详细介绍了这一问题。作者简介:钱文品(老钱),互联网分布式高并发技术十年老兵,目前任掌阅科技服务端技术专家。熟练使用Java、Python、Gola
分类:
其他好文 时间:
2020-11-06 01:01:27
阅读次数:
15
Gin除了模型绑定还提供了模型验证功能。你可以给字段指定特定的规则标签,如果一个字段用binding:"required"标签修饰,在绑定时该字段的值为空,那么将返回一个错误。开发web api的时候大部分参数都是需要验证的,比如email参数要验证是否是邮箱格式、phone参数要验证是否是手机号格 ...
分类:
Web程序 时间:
2020-11-04 19:13:05
阅读次数:
30
一直都知道golang的反射语法,但是对于什么场景下使用reflect反射没有概念,肝了两个晚上,整理了下用到过的场景: 1、框架接口的入参。 2、基类寻找子类的类型,并调用其变量、方法。 下面代码,包含了常见reflect的使用场景: 1 package reflect 2 3 import ( ...
分类:
其他好文 时间:
2020-11-02 10:50:37
阅读次数:
46
Golang 支持在一个平台下生成多个平台运行包 1、Mac下编译Linux, Windows平台的64位可执行程序: CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build test.go CGO_ENABLED=0 GOOS=windows GOARCH=a ...
分类:
其他好文 时间:
2020-10-30 13:16:05
阅读次数:
39
vendor vendor概念最早是由Keith提出,用来存放依赖包。在版本1.5出现。例如gb项目提供了一个名为gsftp的示例项目,它有一个gsftp程序,在标准库之外有三个依赖项。golang.org/x/crypto/ssh, golang.org/x/crypto/ssh/agent和gi ...
分类:
其他好文 时间:
2020-10-29 10:17:32
阅读次数:
21
一、TCMalloc TCMalloc简介 为啥要介绍 TCMalloc? 因为golang的内存分配算法绝大部分都是来自 TCMalloc,golang只改动了其中的一小部分。所以要理解golang内存分配算法,就要先了解下TCMalloc,为后面分析golang内存做一做功课。 tcmalloc ...
分类:
其他好文 时间:
2020-10-26 10:35:14
阅读次数:
27
147. 对链表进行插入排序 方法一:插入排序 准备curr,prev当前节点和前驱节点用于判断是否有逆序的情况;再准备一个哨兵节点用于排序链表的插入。 tmp.next != curr && tmp.next.val < curr.val对应的逻辑关系是:此时对应当前节点curr的值$<$前驱节点 ...
分类:
编程语言 时间:
2020-10-24 09:46:15
阅读次数:
22
切片(slice)是 Golang 中一种比较特殊的数据结构,这种数据结构更便于使用和管理数据集合。切片是围绕动态数组的概念构建的,可以按需自动增长和缩小。切片的动态增长是通过内置函数 append() 来实现的,这个函数可以快速且高效地增长切片,也可以通过对切片再次切割,缩小一个切片的大小。因为切 ...
分类:
其他好文 时间:
2020-10-18 17:07:13
阅读次数:
30
搜索来源子github,主要是进行一些整理 ,方便后期使用 参考项目 https://github.com/golang/image https://github.com/fogleman/primitive https://github.com/disintegration/gift https: ...
分类:
其他好文 时间:
2020-10-18 16:20:09
阅读次数:
22