go语言
@天码行空
这个作者很懒,什么都没留下…
展开
-
go语言实现二叉树遍历
代码如下 package main import ( "fmt" ) type Node struct { Value string Left, Right *Node } func (node *Node) Print() { fmt.Print(node.Value, " ") } func (node *Node) SetValue(v string) { if node == nil { fmt.Println("setting value to nil.node原创 2020-07-04 12:23:55 · 745 阅读 · 0 评论 -
leetcode面试题之go实现相交链表
编写一个程序,找到两个单链表相交的起始节点。 如下面的两个链表: 在节点 c1 开始相交。 示例 1: 输入:intersectVal = 8, listA = [4,1,8,4,5], listB = [5,0,1,8,4,5], skipA = 2, skipB = 3 输出:Reference of the node with value = 8 输入解释:相交节点的值为 8 (注意,如果两个链表相交则不能为 0)。从各自的表头开始算起,链表 A 为 [4,1,8,4,5],链表 B 为 [5,0,1原创 2020-06-18 12:15:54 · 238 阅读 · 0 评论 -
Go语言实现一个协程池
协程的好处: 跨平台 跨体系架构 无需线程上下文切换的开销 无需原子操作锁定及同步的开销。 代码实现 package main import ( "fmt" "time" ) type Task struct { f func()error //一个task中有具体的业务,业务名叫f } func NewTask(arg_f func()error) *Task{ t:=Task{ f:arg_f, } return &t } func(t *Task)Execute(){原创 2020-06-17 19:25:48 · 560 阅读 · 0 评论 -
leetcode面试题之go实现顺时针打印矩阵
顺时针打印矩阵 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字。 示例 1: 输入:matrix = [[1,2,3],[4,5,6],[7,8,9]] 输出:[1,2,3,6,9,8,7,4,5] 示例 2: 输入:matrix = [[1,2,3,4],[5,6,7,8],[9,10,11,12]] 输出:[1,2,3,4,8,12,11,10,9,5,6,7] Go语言实现 package main func printMatrix(matrix [][]int) []int { re原创 2020-06-05 14:49:29 · 202 阅读 · 0 评论 -
数据结构之GO环形链表解决josephu(约瑟夫)问题
josephu问题 Josephu问题为:设编号为1,2,…n的n个人围坐一圈,约定编号为k(1<=k<=n)的人从1开始报数,数到m 的那个人出列,它的下一位又从1开始报数,数到m的那个人又出列,依次类推,直到所有人出列为止,由此产生一个出队编号的序列,用Go语言进行实现如下: package main import ( "fmt" ) //小孩的结构体 type Boy struct { No int // 编号 Next *Boy // 指向下一个小孩的指针[默认值是nil] }原创 2020-05-22 12:01:54 · 177 阅读 · 0 评论 -
Hyperledger之用谷歌云配置Fabric1.4环境
谷歌云系统选择 如下图所示:选择ubuntu系统进行配置。 Fabric环境配置 首先进行docker安装 执行以下命令自动安装: sudo wget -qO- https://get.docker.com/ | bash 如果上面出错可执行以下命令: $ curl -fsSL https://get.docker.com -o get-docker.sh $ sudo sh get-docker.sh 安装docker-compose命令 curl -L "https://github原创 2020-05-20 14:40:45 · 600 阅读 · 0 评论 -
数据结构之Go实现单链表
链表原理 单向链表是一种线性表,实际上是由节点组成的,一个链表拥有不定数量的节点。其数据在内存中存储是不连续的,它存储的数据分散在内存中,每个结点只能也只有它能知道下一个结点的存储位置。由N各节点(Node)组成单向链表,每一个Node记录本Node的数据及下一个Node。向外暴露的只有一个头节点(Head),我们对链表的所有操作,都是直接或者间接地通过其头节点来进行的。 代码实现 定义链表结构 package main import ( "fmt" ) type HeroNode struct {原创 2020-05-20 13:51:51 · 303 阅读 · 0 评论 -
数据结构之Go实现队列
队列的相关概念 队列(queue)也是一种线性表,它的特性是先进先出,插入在一端,删除在另一端。就像排队一样,刚来的人入队(push)要排在队尾(rear),每次出队(pop)的都是队首(front)的人。其特点如下: 1.队列中的数据元素遵循“先进先出”(First In First Out)的原则,简称FIFO结构。 2.队尾添加元素,在队头删除元素。 假如我们有一个存储整型元素的队列,我们依次入队1、2、3. ...原创 2020-05-20 13:41:37 · 245 阅读 · 0 评论