![](https://img-blog.csdnimg.cn/b5a392a89fb04fe29cf56b822754b03d.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Go语言
文章平均质量分 57
Go语言学习分享
RedJACK~
长期计算机爱好者
展开
-
Go语言记录程序执行时间
Go语言记录程序执行时间方法原创 2024-03-26 08:45:51 · 219 阅读 · 0 评论 -
Go 语言Web开发-模板(template)快速入门教程
Go语言模板包是用于生成文本输出的工具,它通过解析模板文本并结合数据生成最终的输出文本。原创 2024-03-21 20:55:35 · 787 阅读 · 0 评论 -
【fyne】Go GUI自学笔记-网站服务器应用
Fyne实现的简易Web应用原创 2023-05-29 22:46:30 · 372 阅读 · 0 评论 -
【密码学入门】古典加密算法-凯撒密码 Go语言实现
凯撒密码手撕原创 2023-05-21 03:14:50 · 268 阅读 · 0 评论 -
回溯算法求解N皇后问题(Go语言)
回溯法求解N皇后(Go语言)原创 2022-10-21 04:50:21 · 204 阅读 · 0 评论 -
Minimax博弈算法设计井字棋AI(Golang)
minimax井字棋Go语言原创 2022-10-19 15:01:49 · 2891 阅读 · 1 评论 -
改进遗传算法求解数独谜题模型详解(Go语言)
使用Go语言实现遗传算法求解数独谜题详解。代码已开源原创 2022-10-14 21:30:56 · 928 阅读 · 1 评论 -
LeetCode刷题笔记——三指针模拟(927. 三等分)
力扣刷题,三指针原创 2022-10-09 15:04:35 · 327 阅读 · 0 评论 -
洛谷Go语言输入超时问题-优化读入
Go语言带缓冲输出原创 2022-09-04 01:54:48 · 306 阅读 · 0 评论 -
两道相似的三维dp动态规划题
三维DP习题原创 2022-08-21 10:11:29 · 194 阅读 · 0 评论 -
区间加减-差分数组、前缀和数组
差分数组入门原创 2022-08-20 09:19:37 · 512 阅读 · 0 评论 -
LeetCode刷题笔记-749. 隔离病毒-模拟+搜索
一道较难的计算机模拟算法原创 2022-08-04 00:36:56 · 180 阅读 · 0 评论 -
数据结构-Trie树(前缀树、字典树)Go语言
Trie树入门Go语言原创 2022-07-07 20:37:26 · 279 阅读 · 0 评论 -
Go语言四种字符串拼接方法性能测试
Go语言四种字符串拼接方法原创 2022-07-07 17:03:39 · 308 阅读 · 0 评论 -
洛谷P1009 阶乘之和-Go语言
洛谷P1009 阶乘之和-Go语言P1009 [NOIP1998 普及组] 阶乘之和题目描述用高精度计算出 S=1!+2!+3!+⋯+n!(n≤50)。其中“!”表示阶乘,例如:5!=5×4×3×2×1。输入格式一个正整数 n。输出格式一个正整数 S,表示计算结果。输入 #13输出 #19说明/提示【数据范围】对于 100% 的数据,1≤n≤50。AC代码package mainimport ( "fmt" "strconv")func add(s1, s原创 2022-05-26 13:46:06 · 235 阅读 · 0 评论 -
Go语言多重赋值执行顺序
Go语言多重赋值多重赋值是Go语言的语法糖a,b = b,a但是要注意Go语言的多重赋值是同时执行的package mainimport "fmt"func main() { var i, j, m, n int i, j, m, n = 1, i+1, j+1, m+1 fmt.Println(i, j, m, n) // 1 1 1 1}所以不要误以为Go语言多重赋值是从左到右按顺序执行,那样会做产生一些奇怪的Bug。...原创 2022-05-25 09:42:30 · 578 阅读 · 0 评论 -
编程语言浮点数精度问题-Go语言
编程语言浮点数精度问题-Go语言计算机浮点数精度问题是有限的,就像如下案例两个变量的结果明明不相等,但是会判断为true 。package mainimport "fmt"func main() { var a float64 = 499999998.0 / 499999999.0 // 0.999999997999999995999999992 var b float64 = (999999998.0 - 499999999.0) / (1000000000.0 - 500000000.0原创 2022-05-24 23:09:23 · 240 阅读 · 0 评论 -
ACM入门题-力扣tusimple-005. 服务器-图论最短路径Go语言
ACM入门题-力扣tusimple-005. 服务器-图论最短路径Go语言tusimple-005. 服务器 中等描述公司来了一批新的分布式服务器,TuTu 要负责启动他们。公司的服务器都有一个唯一的不会和其他服务器重复的名字,现在一共有 n 台服务器,这些服务器之间有 m 条数据线连接起来。如果服务器 x 和 y 之间有一条数据线连接,那么在服务器 x 启动的 t 毫秒后,服务器 y 会自动启动(注意启动是有方向的)。当然如果同时服务器 x 和其他服务器也有数据线连接,而那个服务器在关闭状态,则原创 2022-05-18 14:36:43 · 269 阅读 · 0 评论 -
ACM入门题-POJ-1502:MPI漩涡-Go语言
练习题-POJ-1502:MPI漩涡1502:MPI漩涡链接一1502:MPI漩涡链接二描述BIT 最近接收了他们的新超级计算机,这是一台 32 处理器的 Apollo Odyssey 分布式共享内存机器,带有一个分层通信子系统。Valentine McKee 的研究顾问 Jack Swigert 已要求她对新系统进行基准测试。“由于 Apollo 是分布式共享内存机器,内存访问和通信时间并不统一,”Valentine 告诉 Swigert。``共享同一内存子系统的处理器之间的通信速度很快,但不在原创 2022-05-18 01:11:06 · 256 阅读 · 0 评论 -
迪杰斯特拉算法实现-Go语言
迪杰斯特拉算法实现-Go语言带权值邻接矩阵邻接矩阵为二维数组:graph[i][j]代表 i 到 j 边的权值,若无方向则对角线对称。对应的带权值的邻接矩阵为{ {0 ,10 ,15 ,INF,INF,INF}, {10 ,0 ,INF,INF,20 ,INF}, {15 ,INF,0 ,5 ,INF,18 }, {INF,INF,5 ,0 ,12 ,8 }, {INF,20 ,INF,12 ,0 ,16 }, {INF,INF,18 ,8 ,16原创 2022-05-17 15:53:15 · 328 阅读 · 0 评论 -
LeetCode刷题笔记——模拟(6. Z 字形变换)-Go语言
LeetCode刷题笔记——模拟(6. Z 字形变换)-Go语言6. Z 字形变换 中等将一个给定字符串 s 根据给定的行数 numRows ,以从上往下、从左到右进行Z字形排列。比如输入字符串为 "PAYPALISHIRING" 行数为 3 时,排列如下:P A H NA P L S I I GY I R之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:"PAHNAPLSIIGYIR"。请你实现这个将字符串进原创 2022-04-29 09:50:12 · 240 阅读 · 0 评论 -
回溯算法解题套路框架-Go语言
回溯算法解题套路框架-Go语言解决一个回溯问题实际上就是一个决策树的遍历过程。原创 2022-04-26 18:31:46 · 263 阅读 · 0 评论 -
数据结构-二叉树入门Go语言实现
数据结构-二叉树入门Go语言实现之前我们一直在谈的是一对一的线性结构,可现实中,还有很多一对多的情况需要处理,所以我们需要研究这种一对多的数据结构——“树”,考虑它的各种特性,来解决我们在编程中碰到的相关问题。树的定义树(Tree)是n(n≥0)个结点的有限集。n=0时称为空树。在任意一棵非空树中:(1)有且仅有一个特定的称为根(Root)的结点;(2)当n>1时,其余结点可分为m(m>0)个互不相交的有限集 T1 、T2 、……、Tm ,其中每一个集合本身又是一棵树,并且称为根的子树(Su原创 2022-04-25 02:27:44 · 676 阅读 · 0 评论 -
Go语言排序算法-选择排序、冒泡排序、插入排序
Go语言排序算法-选择排序、冒泡排序、插入排序选择排序算法选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理是:第一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后再从剩余的未排序元素中寻找到最小(大)元素,然后放到已排序的序列的末尾。以此类推,直到全部待排序的数据元素的个数为零。选择排序是不稳定的排序方法。func selectSort(nums []int) { n, minIndex := len(nums), -1 for i :原创 2022-04-22 23:54:46 · 107 阅读 · 0 评论 -
Lintcode刷题-1861 · 老鼠跳跃-Go语言
Lintcode刷题-1861 · 老鼠跳跃-Go语言1861 · 老鼠跳跃 困难描述有一个老鼠从高为n的楼梯顶部跳跃下来,这个老鼠在偶数次跳跃时可以跳1, 3或者4个台阶,奇数次可以跳跃1, 2或者4个台阶。但是楼梯中间会有一些台阶上有胶水,如果跳到那些台阶上,老鼠就会被直接粘住,无法继续跳跃。你需要求出从这个楼梯顶部开始,老鼠有多少种方法能够到达地面,即第0层。若超过地面,也算是可以到达。例如从1跳跃到-1,和从1跳跃到0的方案不同。楼梯有无胶水的状态是从高往低输入的,即arr[0]为楼梯的顶部。原创 2022-04-18 20:50:05 · 91 阅读 · 0 评论 -
LeetCode刷题笔记——模拟(54. 螺旋矩阵)-Go语言
LeetCode刷题笔记——模拟(54. 螺旋矩阵)-Go语言54.螺旋矩阵 中等给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。示例 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]提示:m =原创 2022-04-18 20:48:59 · 281 阅读 · 0 评论 -
LeetCode刷题笔记——DFS(岛屿问题-200,695)-Go语言
LeetCode刷题笔记——DFS(岛屿问题-200,695)-Go语言200. 岛屿数量 中等给你一个由 ‘1’(陆地)和 ‘0’(水)组成的的二维网格,请你计算网格中岛屿的数量。岛屿总是被水包围,并且每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。此外,你可以假设该网格的四条边均被水包围。示例 1:输入:grid = [ ["1","1","1","1","0"], ["1","1","0","1","0"], ["1","1","0","0","0"], ["0"原创 2022-04-16 16:30:19 · 125 阅读 · 0 评论 -
用栈深度优先算法解决迷宫问题-Go语言
用栈广度优先算法解决迷宫问题-Go语言问题描述以上是一个迷宫,我们要从右上角的入口走到左下角的出口。现在要设计一个程序输出可走的路线,如果无法到达出口则输出不能。问题分析对于以上的迷宫图我们要用一个二维数组进行模拟:const N, M = 8, 8 // 迷宫大小// 迷宫图var mg [N + 2][M + 2]int = [N + 2][M + 2]int{ {1, 1, 1, 1, 1, 1, 1, 1, 1, 1}, {1, 0, 0, 1, 0, 0, 0, 1, 0,原创 2022-04-16 02:19:16 · 1013 阅读 · 0 评论 -
数据结构-图的表示邻接矩阵与邻接表-Go语言
数据结构-图的表示邻接矩阵与邻接表-Go语言图的概念到底什么是图?图是由一系列顶点和若干连结顶点集合内两个顶点的边组成的数据结构。数学意义上的图,指的是由一系列点与边构成的集合,这里我们只考虑有限集。通常我们用G = (V,E)表示一个图结构,其中V表示点集,E表示边集。对于连接点之间的边根据其有无方向性分为:有向边和无向边。图的分类:#mermaid-svg-to7Bee2AA0DwZfdA {font-family:"trebuchet ms",verdana,arial,sans-serif原创 2022-04-14 01:05:22 · 1395 阅读 · 0 评论 -
0-1背包问题图解-Go语言
0-1背包问题图解-Go语言问题:给定n种物品和一个背包。物品i的重量是Wi,其价值为Vi,背包的容重量为C。应如何选择装入背包的物品,使得装入背包中物品的总价值最大?在选择装入背包的物品时,对每种物品i只有2种选择,即装入/不装入。dp[i][j]表示前i 件物品体积不超过j 的情况下能达到的最大价值。边界条件:dp[1][j] = V[1],if j >= W[1]和dp[i][1] = 0状态转移方程dp[i][j] = max(dp[i-1][j],dp[i-1][j-W[i]]+原创 2022-04-13 00:11:50 · 373 阅读 · 0 评论 -
Go语言-文件读取访问案例
学习使用Go语言文件读取访问的基本方式原创 2022-04-12 00:04:16 · 163 阅读 · 0 评论 -
埃拉托斯特尼筛法找出质数-Go语言
找出int32正整数范围内所有的质数并输出最大质数与质数数量-Go语言代码实现package mainimport ( "fmt" "math")func main() { const MX = math.MaxInt32 + 1 cnt := 0 isPrime := make([]bool, MX) for i := 0; i < MX; i++ { isPrime[i] = true } for i := 2; i*i < MX; i++ { if i原创 2022-04-06 01:54:32 · 577 阅读 · 0 评论 -
ACM入门题-安装雷达-Go语言
ACM入门题-安装雷达-Go语言时间限制:C/C++ 1000MS,其他语言 2000MS内存限制:C/C++ 256MB,其他语言 512MB分数:100描述有一海岸线(x轴),一半是陆地(y<0)、一半是海(y>0),海上有一些小岛(用坐标点表示P1、P2…),现要在海岸线上建雷达(覆盖半径R)。给出所有小岛的位置,和雷达半径,求最少需要多少个雷达?输入描述输入由几个测试用例组成。 每个用例的第一行包含两个整数 n (1<=n<=1000) 和 d,其中 n 是原创 2022-04-05 04:04:53 · 365 阅读 · 0 评论 -
Go语言数据结构-实现c++风格的数栈stack
Go语言数据结构-实现c++风格的数栈stackGo语言的基本数据类型的切片Slice其实就是传统的动态数组,它本是就可以当成一个栈来使用。package mainimport ( "fmt")type stack []int // 整数型栈// 入栈func (stk *stack) push(x int) { *stk = append(*stk, x)}// 出栈func (stk *stack) pop() int { res := (*stk)[len(*stk)原创 2022-04-05 04:02:40 · 742 阅读 · 0 评论 -
ACM入门题-区间覆盖-Go语言
ACM入门题-区间覆盖-Go语言时间限制:C/C++ 1000MS,其他语言 2000MS内存限制:C/C++ 256MB,其他语言 512MB分数:100描述给定n个闭区间[ai; bi],其中 i=1,2,…,n。 这些区间的总和可以表示为闭合的成对非相交区间的总和。 我们要用最少的间隔找到这样的表示。 此表示的间隔应按升序写入输出。 我们说区间 [a; b] 和 [c; d] 是升序当且仅当 a <= b < c <= d。输入一系列间隔的描述,计算满足上述条件的成对非原创 2022-04-04 20:09:50 · 632 阅读 · 0 评论 -
ACM入门题-最大递增子序列
ACM入门题-最长递增子序列(LIS)-Go语言问题描述输入一个数组 nums ,输出其最长子数组的长度。如:输入nums = [10,9,2,5,3,7,21,18] , 输出 4 。解释 [2,3,7,21]本题可以使用动态规划,dp[i] 代表以nums[i] 结束的最长子序列长度。从中找到最大的 dp[i]力扣300. 最长递增子序列func lengthOfLIS(nums []int) int { //base case n := len(nums) dp原创 2022-04-04 01:51:29 · 328 阅读 · 0 评论 -
ACM入门题-最大子矩阵暴力枚举-Go语言
ACM入门题-最大子矩阵暴力枚举-Go语言问题描述我们这里所描述的矩阵即为一个n*m的二维数组,它的大小由数组内所有元素之和来决定。子矩阵则是一段上下左右连续的子数组,如图所示都为子矩阵。解决思路最终的结果是一个标量,而我们在一个二维数组里寻找这个答案。所以要有降维打击的数学思想。如果给我们的不是一个矩阵,而只是一个向量(一维数组),那我们就可把问题化解为最大连续子序列和问题。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-j14sSo3x-16490080758原创 2022-04-04 01:48:51 · 257 阅读 · 0 评论 -
ACM入门题:机器人移动-Go语言
ACM入门题:机器人移动-Go语言描述蒜头君收到了一份礼物,是一个最新版的机器人。这个机器人有 4 种指令:forward x,前进 x 米。back x,先向后转,然后前进 x 米。left x,先向左转,然后前进 x 米。right x,先向右转,然后前进 x 米。现在把机器人放在坐标轴原点,起始朝向为 x 轴正方向。经过一系列指令以后,你能告诉蒜头君机器人的坐标位置吗。坐标轴上一个单位长度表示 1 米。输入描述第一行输入一个整数n(1≤n≤100) 表示指令的个数。接下里 n 行原创 2022-04-04 01:47:23 · 219 阅读 · 0 评论 -
洛谷-B2104 矩阵加法 Go语言
ACM入门题原创 2022-04-04 01:45:08 · 663 阅读 · 0 评论 -
Go语言数据结构-单链表入门
使用Go语言实现一个简单的单链表原创 2022-03-21 04:11:19 · 305 阅读 · 0 评论