摘要: Go语言是一门现代化的编程语言,以其独特而强大的并发模型而著名。Go通过轻量级的协程(goroutine)和通信机制(channel)实现了高效的并发编程。本篇博客将介绍Go语言的并发模型,讨论并发编程的基本概念和常用模式,并探索如何利用Go的并发特性来提升程序性能和开发效率。 # 并发编程的重要性 阅读全文
posted @ 2023-08-29 08:37 Johnson-Hugo 阅读(14) 评论(0) 推荐(0) 编辑
摘要: Git是目前最流行和广泛使用的分布式版本控制系统之一。它不仅能够有效管理代码的版本历史,还提供了强大的团队协作功能。本篇博客将介绍Git的基本概念和常用操作,并详细讲解如何利用Git进行版本控制和团队协作,以提高开发效率和代码管理能力。 # 什么是Git Git是一个分布式版本控制系统,由Linux 阅读全文
posted @ 2023-08-28 15:16 Johnson-Hugo 阅读(78) 评论(0) 推荐(0) 编辑
摘要: Gin是一个轻量级、灵活和高性能的Web框架,基于Go语言开发。它提供了简洁的API设计和出色的性能,使得构建Web应用程序变得更加简单和高效。本文将介绍如何使用Gin框架来快速构建Web应用程序,并展示其主要特性和用法。本文将介绍关于Gin的基本使用方法,包括基本的请求处理与发送响应。 Gin 包 阅读全文
posted @ 2023-08-27 22:00 Johnson-Hugo 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 在现代的应用程序中,缓存起着至关重要的作用,可以显著提高系统的性能和响应时间。Redis是一个快速、高效的内存数据库,常用于缓存和数据存储。本文将介绍如何使用Redis进行缓存操作,以提高应用程序的性能。 # Redis简介 Redis(Remote Dictionary Server ),即远程字 阅读全文
posted @ 2023-08-27 21:45 Johnson-Hugo 阅读(195) 评论(0) 推荐(0) 编辑
摘要: ## 本文的目标 本文力图实现用简短的篇幅,结合一些具体的应用场景来讲述gorm基本的增删查改功能。 ## Gorm介绍 在现代软件开发中,数据库操作是构建应用程序不可或缺的一部分。 GORM是Go语言的一个ORM(Object Relational Mapping)库。它可以让我们通过Go来操作数 阅读全文
posted @ 2023-08-22 23:34 Johnson-Hugo 阅读(151) 评论(0) 推荐(0) 编辑
摘要: ## 本文的目标 本文通过对Go基本语法进行简要概述,旨在通过短时间内的学习即可掌握基本的Go语法,并切实参与到实际Go项目的开发中。 ## Go语言简介 Go语言由来自Google公司的Robert Griesemer,Rob Pike和Ken Thompson于2007年9月开始设计和实现,然后 阅读全文
posted @ 2023-08-20 11:17 Johnson-Hugo 阅读(33) 评论(0) 推荐(0) 编辑
摘要: 简单介绍一下数论分块的思想。空说无益,先上几道题。 题1:P1403 约数研究 链接如下:https://www.luogu.com.cn/problem/P1403 如果这道题要对每一个数进行分解、统计,未免太麻烦。我们不妨换个思路,假设这里的N是30,那么这个区间内整体的数字分布如下图: 这里我 阅读全文
posted @ 2023-03-31 12:59 Johnson-Hugo 阅读(37) 评论(0) 推荐(0) 编辑
摘要: 参考资料:https://oi-wiki.org/ds/block-array/ 分块思想是一种广泛的思想,树状数组与线段树实际上都是使用了该种思想。但是,在实际问题中,我们常常会遇到一些更为灵活的问题,用线段树或者树状数组并不是那么好用。这里就需要我们化零为整,使用灵活分块的思想来解决。 举个例子 阅读全文
posted @ 2022-12-22 23:46 Johnson-Hugo 阅读(50) 评论(0) 推荐(0) 编辑
摘要: 参考资料:维基的哈密顿-雅克比-贝尔曼方程条目。有条件的同学可以自行查看,效果比本文要好一些。文末也会给出相关更深入的资料供大家学习。 作为强化学习的一个基础思想,HJB方程从大框架概述了控制优化的方向。这里对其推导与应用进行简述。 定义如下变量:为过程价值函数,其中S(t)为在t时刻的状态函数,A 阅读全文
posted @ 2022-12-18 22:14 Johnson-Hugo 阅读(1353) 评论(0) 推荐(0) 编辑
摘要: 本文参考https://oi-wiki.org/graph/lca/ 定义树上u,v两点的LCA(最近公共祖先)是从根节点dfs到上述两节点路径上距离上述两点最近的公共点。 LCA有如下性质: 1、u是v的祖先,当且仅当LCA(u,v)=u 2、d(u,v)=h(u)+h(v)-2h(LCA(U,V 阅读全文
posted @ 2022-09-26 00:08 Johnson-Hugo 阅读(71) 评论(0) 推荐(0) 编辑