数据结构
@天码行空
这个作者很懒,什么都没留下…
展开
-
go语言实现二叉树遍历
代码如下package mainimport ( "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 · 709 阅读 · 0 评论 -
leetcode面试题之go实现回文数
判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。示例 1:输入: 121输出: true示例 2:输入: -121输出: false解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。示例 3:输入: 10输出: false解释: 从右向左读, 为 01 。因此它不是一个回文数。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/palindrome-n原创 2020-06-06 14:46:34 · 125 阅读 · 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 mainfunc printMatrix(matrix [][]int) []int { re原创 2020-06-05 14:49:29 · 188 阅读 · 0 评论 -
数据结构之Go实现单链表
链表原理单向链表是一种线性表,实际上是由节点组成的,一个链表拥有不定数量的节点。其数据在内存中存储是不连续的,它存储的数据分散在内存中,每个结点只能也只有它能知道下一个结点的存储位置。由N各节点(Node)组成单向链表,每一个Node记录本Node的数据及下一个Node。向外暴露的只有一个头节点(Head),我们对链表的所有操作,都是直接或者间接地通过其头节点来进行的。代码实现定义链表结构package mainimport ( "fmt")type HeroNode struct {原创 2020-05-20 13:51:51 · 287 阅读 · 0 评论 -
数据结构之Go实现队列
队列的相关概念队列(queue)也是一种线性表,它的特性是先进先出,插入在一端,删除在另一端。就像排队一样,刚来的人入队(push)要排在队尾(rear),每次出队(pop)的都是队首(front)的人。其特点如下:1.队列中的数据元素遵循“先进先出”(First In First Out)的原则,简称FIFO结构。2.队尾添加元素,在队头删除元素。假如我们有一个存储整型元素的队列,我们依次入队1、2、3....原创 2020-05-20 13:41:37 · 230 阅读 · 0 评论