Poisoner's Blog

keep running


  • 首页

  • 标签

  • 归档

  • 搜索

Go源码学习之双向链表

发表于 2018-07-07 | 更新于 2018-07-08 | 阅读次数:

双向链表的定义

双向链表也叫双链表,是链表的一种,它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱。所以,从双向链表中的任意一个结点开始,都可以很方便地访问它的前驱结点和后继结点。一般我们都构造双向循环链表。

这里记录一下自己学习理解的过程

图解

Doubly linked list - wikipedia

Go的源码实现

1.首先看一下链表中存储的元素(Element)的定义:

1
2
3
4
5
6
7
8
9
10
11
// 双向链表的一个元素 
type Element struct {
// 前驱指针和后继指针
prev, next *Element

// 该元素属于哪个链表list
list *List

// 该元素存储的值
Value interface{}
}

阅读全文 »

使用go-swagger为golang API自动生成swagger文档

发表于 2018-05-23 | 阅读次数:

什么是swagger?

Swagger是一个简单但功能强大的API表达工具。它具有地球上最大的API工具生态系统,数以千计的开发人员,使用几乎所有的现代编程语言,都在支持和使用Swagger。使用Swagger生成API,我们可以得到交互式文档,自动生成代码的SDK以及API的发现特性等。

swagger文档长啥样?

一个最简单的swagger文档示例:

1
2
3
4
5
6
7
8
9
10
11
12
13
swagger: "2.0"

info:
version: 1.0.0
title: Simple API
description: A simple API to learn how to write OpenAPI Specification

schemes:
- https
host: simple.api
basePath: /openapi101

paths: {}
阅读全文 »

使用automator上传图片到腾讯云

发表于 2018-05-08 | 更新于 2018-05-09 | 阅读次数:

背景

前段时间折腾了一下hexo博客,部署了Github Pages,设置了自己的域名转发,添加了https,仿佛万事具备,只差写博客了。然而发现博客配图还是个问题,因为markdown添加图片的时候,我想使用cdn,而不是本地图片。

于是考察了一些可以作为图床的云服务商,比如七牛,sm.ms,腾讯云 。对比之后发现七牛不支持https,sm.ms完全免费,但功能似乎比较少,腾讯云的话有免费的几十G空间(具体多少我忘了)还提供https。嗯就用腾讯云吧。

阅读全文 »

hexo使用笔记

发表于 2018-04-25 | 阅读次数:


添加阅读次数统计

参考next主题文档,使用leanCloud来统计

1.注册leancloud账号,获取appId和appKey,具体细节可以参考这里

2.编辑主题配置文件,修改配项leancloud_visitors

阅读全文 »
poisoner

poisoner

May the code be with you!

4 日志
11 标签
RSS
GitHub
© 2018 poisoner