![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Go
blakezyr
如果什么都很容易,那还要选择做什么?
展开
-
Golang中slice和append的关系
这里是一个大坑首先我们都知道,append函数能够将slice追加至末尾,但是这里需要考虑值传递还是引用传递,因为如果如果是值传递,改变切片不会改变append之后的结果;但如果是引用传递,改变了切片的内容,append的结果当然也会随之改变!var res [][]inttmp:=[]int{5}res=append(res,tmp)res==[[5]]//如果这时候我们去改变tmp的内容,那么res也会随之改变//如tmp[0]=1res==[[1]]...原创 2020-11-26 14:17:40 · 350 阅读 · 0 评论 -
Golang中append头部插入的方法
golang中的append函数一般都是尾部插入,例如var res [][]intsum:=[]int{2}res=append(res,sum)如果要让他在头部插入呢?var res [][]intsum:=[]{2}res=append([][]int{sum},res...)解释如下首先append第一维度肯定要保持和等号左边一样的二维切片,否则他是没办法插入的,具体可以看append函数的源码因此我们需要自己构造一个二维切片放入我们要头插的内容,当然二维要放入的内容肯定是原创 2020-11-23 20:37:48 · 8189 阅读 · 5 评论 -
二叉树 层次遍历 Golang 切片当队列(此题为层次遍历模板)
面试题 04.03. 特定深度节点链表题目给定一棵二叉树,设计一个算法,创建含有某一深度上所有节点的链表(比如,若一棵树的深度为 D,则会创建出 D 个链表)。返回一个包含所有深度的链表的数组。示例输入:[1,2,3,4,5,null,7,8]1/ \2 3/ \ \4 5 7/8输出:[[1],[2,3],[4,5,7],[8]]代码/** * Definition for a binary tree node. * type TreeNode原创 2020-11-22 17:45:22 · 199 阅读 · 1 评论 -
【11.17力扣打卡】(148)链表排序(先写了一个归并排序)
题目给你链表的头结点 head ,请将其按 升序 排列并返回 排序后的链表 。进阶:你可以在 O(n log n) 时间复杂度和常数级空间复杂度下,对链表进行排序吗?示例1输入:head = [4,2,1,3]输出:[1,2,3,4]示例2输入:head = [-1,5,3,4,0]输出:[-1,0,3,4,5]示例3输入:head = []输出:[]代码/** * Definition for singly-linked list. * type ListNod原创 2020-11-17 17:21:11 · 121 阅读 · 0 评论 -
【11.8力扣打卡】(力扣1255)得分最高的单词集合(DFS)
题目你将会得到一份单词表 words,一个字母表 letters (可能会有重复字母),以及每个字母对应的得分情况表 score。请你帮忙计算玩家在单词拼写游戏中所能获得的「最高得分」:能够由 letters 里的字母拼写出的 任意 属于 words 单词子集中,分数最高的单词集合的得分。单词拼写游戏的规则概述如下:玩家需要用字母表 letters 里的字母来拼写单词表 words 中的单词。可以只使用字母表 letters 中的部分字母,但是每个字母最多被使用一次。单词表 words 中每个单原创 2020-11-09 12:48:21 · 227 阅读 · 0 评论