Golang 泛型编程初体验
Go 1.18 加入了对泛型的支持。本文将使用切片反转和对象排序两个示例场景来演示泛型的使用。 开始前,我们先了解一下泛型的基本概念。 1 泛型是什么? 泛型(Generics)是编程语言中的一种范式,其允许在定义类(Go 中的结构体)、接 …
阅读更多Go 1.18 加入了对泛型的支持。本文将使用切片反转和对象排序两个示例场景来演示泛型的使用。 开始前,我们先了解一下泛型的基本概念。 1 泛型是什么? 泛型(Generics)是编程语言中的一种范式,其允许在定义类(Go 中的结构体)、接 …
阅读更多Golang 有每半年发布一次版本的惯例,2024 年 2 月 6 号,Golang 在发布 1.21 半年后如期发布了 1.22 版本。其中在语言层面上,1.22 版本对 for 循环作了两处更新。
阅读更多「喜马拉雅」是本人非常喜欢的一款音频软件。里面有很多优质的音频节目,丰富了我的日常生活。 本文的诞生来自于我的个人需求:本人是喜马拉雅 APP 的重度用户,几乎每天都会使用其来听一些经典,它的确是给了我「每一天的精神食粮」。有时,有一些音频 …
阅读更多日常编码中离不开字符串拼接,最常用的当属原生的拼接方式(+=)。但其在少量次数拼接中性能还可以,若进行大量的字符串拼接则应使用其它更高效的方式。 本文首先列出 Golang 中常用的几种字符串拼接方式,然后会对它们进行基准测试,以期阅读完本 …
阅读更多1 题目描述 给定一棵二叉树的先序遍历及中序遍历,尝试构建该二叉树。 说明: 假定树中不存在值重复的情形 例如:
阅读更多1 题目描述 设计链表的实现。您可以选择使用单链表或者双链表来实现。 单链表中的节点应有val和next两个属性,val为当前节点的值,next为下一个节点的指针或引用。 若使用双链表实现,则需要一个额外的属性prev来指向当前节点的前一个 …
阅读更多Golang text/template 包是一个数据驱动的模版渲染工具。提供条件判断,数组或 map 遍历;参数赋值,函数或方法调用;自定义函数扩展,模板嵌套及重用等功能。基于该工具,可以轻松实现复杂场景的文本渲染。如Helm …
阅读更多1 题目描述 给定一棵二叉树,返回其节点值的中序遍历结果。 例如: 输入:[1,null,2,3] 1 \ 2 / 3 输出:[1,3,2] 注:递归较简单,您可否使用循环来实现?
阅读更多1 题目描述 对单链表的某一段(自第m个位置起到第n个位置止)进行反转。 例如: 输入:1->2->3->4->5->NULL, m = 2, n = 4 输出 …
阅读更多1 题目描述 对单链表进行反转。 例如: 输入: 1->2->3->4->5->NULL 输出: 5->4->3->2->1->NULL 注:链表反转可使用循环或者递归方式实现,您 …
阅读更多