【数据结构】Golang 实现单链表
概念
通过指针将一组零散的内存块串联在一起 , 把内存块称为链表的“结点”。 记录下个结点地址的指针叫作后继指针 next ,第一个结点叫作头结点,把最后一个结点叫作尾结点 。
代码实现
定义单链表
在 golang 中可以通过结构体定义单链表:
// ListNode 单链表
type ListNode struct {Val intNext *ListNode
}
操作单链表
使用 golang 实现单链表常用操作:添加节点、遍历链表、查找链表节点、获取链表长度
// AddNode 添加节点
func AddNode(head *ListNode, v int) *ListNode {newNode := &ListNode{Val: v, Next: nil}if head == nil {return newNode}current := headfor current.Next != nil {current = current.Next}current.Next = newNodereturn head
}// TraverseSingleList 遍历单链表
func TraverseSingleList(t *ListNode) {if t == nil {fmt.Println("-> 空链表!")return}for t != nil {fmt.Printf("%d -> ", t.Val)t = t.Next}fmt.Println()
}// SearchSingleListNode 查找单链表节点
func SearchSingleListNode(t *ListNode, v int) bool {if Head == nil {t = &ListNode{v, nil}Head = treturn false}if v == t.Val {return true}if t.Next == nil {return false}return SearchSingleListNode(t.Next, v)
}// GetSingleListSize 获取链表长度
func GetSingleListSize(t *ListNode) int {if t == nil {fmt.Println("-> 空链表!")return 0}i := 0for t != nil {i++t = t.Next}return i
}
相关文章:
【数据结构】Golang 实现单链表
概念 通过指针将一组零散的内存块串联在一起 , 把内存块称为链表的“结点”。 记录下个结点地址的指针叫作后继指针 next ,第一个结点叫作头结点,把最后一个结点叫作尾结点 。 代码实现 定义单链表 在 golang 中可以通过结构体定义单链表…...
云服务器利用Docker搭建sqli-labs靶场环境
一、安装宝塔面板 使用xshell、electerm、SecureCRT等远程终端连接登陆上云服务器,在Linux宝塔面板使用脚本安装 安装后,如下图:按照提示,在云服务器防火墙/安全组放行Linux宝塔面板的端口 在浏览器打开上述网址,登…...
jQuery成功之路——jQuery介绍和jQuery选择器概述
一、jQuery介绍 1.1 jQuery概述 jQuery的概述 jQuery是一个快速、简洁的JavaScript框架。jQuery设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。JQuery封装了JavaScript常用的功能代码,提供了一套易于使…...
极限五分钟,在宝塔中用 Docker 部署升讯威在线客服系统
最近客服系统成功经受住了客户现场组织的压力测试,获得了客户的认可。 客户组织多名客服上线后,所有员工同一时间打开访客页面疯狂不停的给在线客服发消息,系统稳定无异常无掉线,客服回复消息正常。消息实时到达无任何延迟。 本文…...
Java--静态字段与静态方法
1、静态字段 如果将一个字段定义为static,每个类只有一个这样的字段。而对于非静态的实例字段,每个对象都有自己的一个副本。 例如: class Employee {private static int nextId 1;private int id;... }其中,每一个Employee对…...
多线程的五种“打开”方式
1 概念 1.1 线程是什么?? 线程(Thread)是计算机科学中的一个基本概念,它是进程(Process)中的一个执行单元,负责执行程序的指令序列。线程是操作系统能够进行调度和执行的最小单位。…...
信息熵 条件熵 交叉熵 联合熵 相对熵(KL散度) 互信息(信息增益)
粗略版快速总结 条件熵 H ( Q ∣ P ) 联合熵 H ( P , Q ) − H ( P ) 条件熵H(Q∣P)联合熵H(P,Q)−H(P) 条件熵H(Q∣P)联合熵H(P,Q)−H(P) 信息增益 I ( P , Q ) H ( P ) − H ( P ∣ Q ) H ( P ) H ( Q ) − H ( P , Q ) 信息增益 I(P,Q)H(P)−H(P∣Q)H(P)H(Q)-H(P,Q) 信息…...
Fiddler Response私人订制
在客户端接口的测试中,我们经常会需要模拟各种返回状态或者特定的返回值,常见的是用Fiddler模拟各种请求返回值场景,如重定向AutoResponder、请求拦截修改再下发等等。小编在近期的测试中遇到的一些特殊的请求返回模拟的测试场景,…...
【德哥说库系列】-ASM管理Oracle 19C单实例部署
📢📢📢📣📣📣 哈喽!大家好,我是【IT邦德】,江湖人称jeames007,10余年DBA及大数据工作经验 一位上进心十足的【大数据领域博主】!😜&am…...
手写一个简单爬虫--手刃豆瓣top250排行榜
#拿到页面面源代码 request #通过re来提取想要的有效信息 re import requests import re url"https://movie.douban.com/top250"headers{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/11…...
【word密码】如何限制word文件中部分内容?
Word文件中有一部分内容不想他人编辑,我们可以设置限制编辑,可以对一部分内容设置限制编辑,具体方法如下: 我们将需要将可以编辑的地方选中,然后打开限制编辑功能 然后勾选限制编辑设置界面中的【限制编辑】和【每个人…...
spring 自定义类型转换-ConverterRegistry
1背景介绍 一个应用工程里面,一遍会涉及到很多的模型转换,如DTO模型转DO模型,DO模型转DTO, 或者Request转DTO模型,总的来说,维护起来还是相对比较复杂。每涉及一个转换都需要重新写对应类的get或者set方法,…...
springboot实现发送短信验证码
目录 一、选择并注册短信服务提供商: 二、添加依赖: 三、配置短信服务信息: 四、编写发送短信验证码的方法: 五、调用发送短信验证码的方法: 一、选择并注册短信服务提供商: 1、选择一个可靠的短信服…...
2024王道408数据结构P144 T18
2024王道408数据结构P144 T18 思考过程 首先还是先看题目的意思,让我们在中序线索二叉树里查找指定结点在后序的前驱结点,这题有一点难至少对我来说…我讲的不清楚理解一下我做的也有点糊涂。在创建结构体时多两个变量ltag和rtag,当ltag0时…...
在windows下安装配置skywalking
1.下载地址 Downloads | Apache SkyWalkinghttp://skywalking.apache.org/downloads/ 2.文件目录说明 将文件解压后,可看到agent和bin目录: Agent:作为探针,安装在服务器端,进行数据采集和上报。 Config:…...
关于大模型参数微调的不同方法
Adapter Tuning 适配器模块(Adapter Moudle)可以生成一个紧凑且可扩展的模型;每个任务只需要添加少量可训练参数,并且可以在不重新访问之前任务的情况下添加新任务。原始网络的参数保持不变,实现了高度的参数共享 Pa…...
方法的引用第一版(method reference)
1、体验方法引用 在使用Lambda表达式的时候,我们实际上传递进去的代码就是一种解决方案:拿参数做操作那么考虑一种情况:如果我们在Lanbda中所指定的操作方案,已经有地方存在相同方案,那是否还有必要再重复逻辑呢&#…...
Android DataBinding 基础入门(学习记录)
目录 一、DataBinding简介二、findViewById 和 DataBinding 原理及优缺点1. findViewById的优缺点2. DataBinding的优缺点 三、Android mvvm 之 databinding 原理1. 简介和三个主要的实体DataViewViewDataBinding 2.三个功能2.1. rebind 行为2.2 observe data 行为2.3 observe …...
spring 错误百科
一、使用Spring出错根源 1、隐式规则的存在 你可能忽略了 Sping Boot 中 SpringBootApplication 是有一个默认的扫描包范围的。这就是一个隐私规则。如果你原本不知道,那么犯错概率还是很高的。类似的案例这里不再赘述。 2、默认配置不合理 3、追求奇技淫巧 4、…...
OpenCV基本操(IO操作,读取、显示、保存)
图像的IO操作,读取和保存方法 1.1 API cv.imread()参数: 要读取的图像 读取图像的方式: cv.IMREAD*COLOR:以彩色模式加载图像,任何图像的图像的透明度都将被忽略。这是默认参数 标志: 1 cv.IMREAD*GRAYSCALE :以…...
RTX 4060笔记本也能玩转AI绘画?Nunchaku FLUX.1-dev量化版亲测体验报告
RTX 4060笔记本也能玩转AI绘画?Nunchaku FLUX.1-dev量化版亲测体验报告 1. 开箱即用的AI绘画体验 作为一名长期使用中端显卡的AI爱好者,当我第一次听说Nunchaku FLUX.1-dev量化版可以在RTX 4060笔记本上运行时,内心充满了怀疑。毕竟&#x…...
从零搭建AI应用前端:微信小程序调用Qwen1.5-1.8B GPTQ模型API
从零搭建AI应用前端:微信小程序调用Qwen1.5-1.8B GPTQ模型API 最近在折腾一个挺有意思的项目,想给朋友做个能聊天的AI小程序。后端我选了个轻量但能力不错的模型——Qwen1.5-1.8B GPTQ,部署在星图GPU平台上,API接口已经调通了。接…...
终极Lens界面定制指南:3个实用技巧提升Kubernetes管理效率
终极Lens界面定制指南:3个实用技巧提升Kubernetes管理效率 【免费下载链接】lens Lens - The way the world runs Kubernetes 项目地址: https://gitcode.com/gh_mirrors/le/lens Lens作为全球最受欢迎的Kubernetes IDE,凭借其直观的上下文感知界…...
MongoDB C Driver与ASP.NET Core集成:现代Web应用开发实战
MongoDB C# Driver与ASP.NET Core集成:现代Web应用开发实战 【免费下载链接】mongo-csharp-driver The Official C# .NET Driver for MongoDB 项目地址: https://gitcode.com/gh_mirrors/mo/mongo-csharp-driver MongoDB C# Driver是MongoDB官方提供的.NET驱…...
Nomic-Embed-Text-V2-MoE部署排错指南:解决403 Forbidden等常见API访问错误
Nomic-Embed-Text-V2-MoE部署排错指南:解决403 Forbidden等常见API访问错误 部署一个新的模型服务,就像给家里添置一台新电器,插上电、打开开关,本以为就能顺利运转,结果却发现指示灯不亮,或者干脆跳闸了。…...
OFA iic/ofa_visual-entailment_snli-ve_large_en镜像多场景落地:教育+电商+出版
OFA图像语义蕴含模型多场景落地:教育电商出版实战指南 1. 镜像简介与核心价值 你手头有一张图片,还有两段描述它的英文句子。你能判断这两段话在逻辑上是什么关系吗?比如,第一句话说“图片里有一个水瓶”,第二句话说…...
python-flask-djangol框架的旅游导游管理系统的功能全bja0vffx
目录功能模块设计技术实现方案前端交互实现部署与测试方案项目进度规划项目技术支持源码获取详细视频演示 :文章底部获取博主联系方式!同行可合作功能模块设计 旅游导游管理系统基于Python Flask/Django框架开发,需包含以下核心功能模块&…...
单机游戏的多人革命:Nucleus Co-Op如何重构本地游戏体验
单机游戏的多人革命:Nucleus Co-Op如何重构本地游戏体验 【免费下载链接】nucleuscoop Starts multiple instances of a game for split-screen multiplayer gaming! 项目地址: https://gitcode.com/gh_mirrors/nu/nucleuscoop 【需求场景:当游戏…...
MacBook上5分钟搞定Jmeter接口压测:从下载到脚本自动保存结果(附BeanShell代码)
MacBook高效接口压测指南:5分钟实现Jmeter自动化结果收集 每次遇到偶发性接口问题,手动点击上百次查看结果是不是让你抓狂?作为开发者,我们需要的不仅是工具,更是一套能自动完成脏活的解决方案。今天我们就来彻底解决…...
1.NCM格式解密技术全解析:从原理到实战的音乐自由之路
1.NCM格式解密技术全解析:从原理到实战的音乐自由之路 【免费下载链接】ncmdump ncmdump - 网易云音乐NCM转换 项目地址: https://gitcode.com/gh_mirrors/ncmdu/ncmdump 问题引入:当音乐遭遇数字围栏 "花了千元订阅的无损音乐,…...
