logo头像

待到风起时,扬帆济沧海

后端

算法笔记

算法推导大O阶方法 用常数1取代运行时间中的所有加法常数 在修改后的运行次数函数中,只保留最高阶项 如果最高阶存在且不是1,则去除与这个项相乘的常数 常数阶首先顺序结构的时间复杂度。下面这个算法案例:123int sum=0,n=1...

Go-context详解

背景golang在1.6.2的时候还没有自己的context,在1.7的版本中就把golang.org/x/net/context包被加入到了官方的库中。golang 的 Context包,是专门用来简化对于处理单个请求的多个goro...

Go-深入解析Slice底层实现

原文地址:https://halfrost.com/go_slice/ 切片是 Go 中的一种基本的数据结构,使用这种结构可以用来管理数据集合。切片的设计想法是由动态数组概念而来,为了开发者可以更加方便的使一个数据结构可以自动增加和减...

Go-log日志

日志使用o语言为我们提供了标准的log包,来跟踪日志的记录。下面我们看看日志包log的使用 1234func main() { log.Println("这是百度地址:","http://www...

Go-错误(error)处理方案

error接口error其实是一个接口,内置的,看下他的定义12345// The error built-in interface type is the conventional interface for// represent...

Go-字符串高效拼

+号拼接这种拼接最简单,也最容易被我们使用,因为它是不限编程语言的,比如Go语言有,Java也有,它们是+号运算符,在运行时计算的。现在演示下这种拼接的代码,虽然比较简单。1234567func StringPlus() string...

RabbitMQ入门

历史RabbitMQ是一个Erlang开发的AMQP(Advanced Message Queuing Protocol )的开源实现。AMQP 的出现其实也是应了广大人民群众的需求,虽然在同步消息通讯的世界里有很多公开标准(如 Co...

protobuf

grpc与protobufProtobuf 协议详解各语言类型.proto TypeC++ TypeJava TypePython Type[2]Go TypeRuby TypeC# TypePHP TypeDart Typedoub...

Go 中 defer 与 return 之间的迷之执行顺序

偶然间发现了一个有意思的地方:在使用defer时,匿名返回值的函数和命名返回值的函数的返回结果是不一样的。具体见如下代码:12345678910111213141516171819202122232425262728293031323...