SZの学习小屋
  • Home
  • Archives
  • Tags
  • About
  • Links

【Go笔记】哈希表

简介 map又称哈希表,是一种KV结构,分散存储在桶中 第一步计算键的哈希值,其结果与桶的数量无关 第二步通过取模得到下标 通常认为map是一种O(1)时间复杂度的操作,通过一个键快速查找到一个值 哈希碰撞与解决方法 哈希碰撞即不同的键通过哈希函数可能产生相同的哈希值,可能会导致同一个桶中可能存在多个元素 有两种主要策略可以避免哈希碰撞:拉链法以及开放寻址法 ¶拉链法 即将同一个哈希桶(
2025-08-13
go-note
#Go笔记

【Go笔记】字符串

字符串的本质 一般的字符串分为编译时指定长度和动态长度两种,Go使用的是前者 字符串的终止有两种方式,一种是C中的隐式申明,以\0结尾;一种是Go中的显示声明 Go中的字符串本质上是字符数组,可以用下标访问,但是不能被修改 空间方面,一般字符占1字节,特殊字符如中文,日文等占3个字符 符文类型 (rune) 设计者认为,因为有些字符非常相似,用于表示字符串可能会有歧义,而其不同的本质是编码之
2025-08-12
go-note
#Go笔记

【Go笔记】数组与切片

数组的特性 声明时需要确定类型和长度,可以不指定长度,在编译时推断 声明的同时可以赋值 Go中数组在赋值和函数调用时的形参都是值复制,是两个完全不同的数组 数组在复制之后是两个不同的数组,涉及到内存的复制操作,可能需要考虑性能开销,是深复制 数组的底层原理 数组在编译时就要确认长度和类型 AST阶段的数据类型为TARRAY,内部的Arraystruct存储了数组的类型及大小,新数组的Op操作
2025-08-12
go-note
#Go笔记

【Go笔记】类型

类型推断 ¶特性 已经确定的类型不能进行隐式转化,因此类型被推断出来之后就不能隐式转换了 不允许对变量标识符引用的值进行转换,如b := a + 1中,a必须和b的类型相同 int和int64,float32和float64是四种不同的类型 ¶原理 在词法解析阶段,右边的常量会被解析为一个未定义的类型 全是0~9的就是整数,字符中有小数点的就是浮点数,字符串的首字符为"或',识别0
2025-08-10
go-note
#Go笔记

【Go笔记】浮点数

定点数和浮点数 定点数用固定的大小表示整数部分和小数部分 浮点数使用以2为底的科学计数法来表示和存储一个小数 使用IEEE-754浮点数标准来存储小数 IEEE-754 分为系数、底数与指数三个部分 单精度(32位) - 符号1位、指数8位、小数23位、偏移量127 双精度(64位) - 符号1位、指数11位、小数52位、偏移量1023 使用以2为底的科学计数法,系数的整数部分一定是1,所以
2025-08-09
go-note
#Go笔记

【Go笔记】编译器

三段式结构 ¶前端 处理,理解,解析源程序 进行精准的语义表达 ¶IR(中间阶段) 多个IR,多种数据结构表示代码 识别冗余代码,识别内存逃逸等代码优化工作 需要前端记录的各种细节 ¶后端 生成特定目标机器的最终产物 如可执行文件,obj文件,汇编语言等 语法解析 ¶自上而下的递归下降算法 (Top-Down Recursive-Descent) https://www.youtub
2025-08-08
go-note
#Go笔记

【SE笔记】一些Jvav复习的东西

数据类型 & 运算符 float型字符必须在变量最后面加上F或f 高精度可以用java.math.BigDecimal(没讲) 数组 定义 - double[] marks,double [5]marks, marks = new double[5], marks = new double[]{1, 2, 3, 4, 5} public static void a
2025-05-21
se-note
#SE笔记

【前端笔记】CSS的各种选择器们

图片来源:表严肃https://biaoyansu.com/ 这上面的课讲得挺好的,建议去听一听。 id选择器 123#id1 { ...} 元素选择器 123h1 { ...} 类选择器 123.class { ...} 属性选择器 1234/* 以botton的属性为例 */[title="abc"] {
2025-05-17
front-end
#前端笔记

【SE笔记】一些地方的网络代理设置

由于众所周知的原因,下载一些资源的时候需要代理,下面是几种常见情况的代理设置 终端 macOS终端和Windows终端是一样的。首先打开命令行的rc文件,macOS一般为~/.zshrc(用的zsh环境),Linux一般为~/.bashrc(用的bash环境),没有就新建一个。在文件末尾加上以下配置 12alias proxy='export all_proxy=socks5://127
2025-05-17
se-note
#SE笔记

【Qt笔记】C++大作业项目报告

项目地址 Github:https://github.com/stephen-zeng/Mobile-Mouse/ Gitee:https://github.com/stephen-zeng/Mobile-Mouse/ QQ空间吃链接是真的蚌埠住🤣 调用的框架&编译框架 Qt - 项目大框架,负责调用蓝牙通信,处理传感器数据,连接前后端 GUI - 使用QtQuick,类CSS与JS语
2025-05-17
ml-note
#Qt笔记
1234…7

Search

Hexo Fluid
萌ICP备20244080号
Views: Visitors:
粤ICP备2024280299号 | police-icon 粤公网安备44020302000269号