关于我
欢迎来到我的空间! 我的第 个朋友! 关于我 🌱 毕业于复旦大学 ⭐ 现就职于华为,软件开发工程师 兴趣 👨🏽💻 项目: NLP, Large Language Model, Golang Project, Python Project, Vue Project. 编程语言 : Golang, Python, C++/C, Java 开源项目经验 👯As a manager : 优酷x天池 「酷文」小说创作大模型挑战赛: DeepThinking Team Leader, Third Prize. As a member : PhenoBERT : PhenoBERT: A combined deep learning method for automated recognition of human phenotype ontology IEEE Journal of Biomedical and Health Informatics(IF=5.77) : Reviewer 比赛 优酷x天池...
Golang LeetCode 刷题必备基础和常用模板
Golang LeetCode 刷题必备基础备忘录1. 基础数据结构用法数组/切片 (Slice)12345678910// 初始化arr := []int{1, 2, 3}slice := make([]int, 5) // 长度5slice2 := make([]int, 0, 10) // 长度0,容量10// 操作slice = append(slice, 4) // 追加len(slice) // 长度copy(dest, src) // 复制sort.Ints(slice) // 排序 字符串 (String)1234567891011121314// 基本操作s := "hello"len(s) // 字节长度(非字符数)utf8.RuneCountInString(s) // 字符数strings.Contains(s, "ell") // truestrings.Split("a,b,c", ",") //...
golang 堆中返回的值为什么是最后一个,不是0位
这涉及到 Go 中 sort.Slice 和堆(container/heap) 实现的关键区别。虽然它们都使用 Less 函数,但行为完全不同: 1. sort.Slice 的 Less 函数(排序场景)123sort.Slice(people, func(i, j int) bool { return people[i].Age < people[j].Age // 升序排序}) 作用:直接定义最终排序顺序 结果:当 people[i].Age < people[j].Age 时,i 会排在 j 前面 → 升序排列 内存布局:切片物理位置就是有序的,索引0是最小值,最后索引是最大值 2. 堆的 Less 函数(堆场景)1234type IntHeap []intfunc (h IntHeap) Less(i, j int) bool { return h[i] < h[j] // 最小堆定义} 作用:定义堆的父子节点关系(不是最终排序顺序!) 堆性质:在最小堆中,任意父节点 ≤...
pycharm配置VPN代理
确定本地VPN的代理端口: 点击check connetion 输入http://www.google.com 也可以使用requests 包验证, 返回内容,不爆红即可。 12345import requests if __name__ == "__main__": response = requests.get("http://www.youtube.com") print(response.text)
回溯总结
子集型回溯17. 电话号码的字母组合 - 力扣(LeetCode) 方法一:输入的视角(选或不选)对于输入的 nums,考虑每个 nums[i] 是选还是不选,由此组合出 2n 个不同的子集。 dfs 中的 i 表示当前考虑到 nums[i] 选或不选。 1234567891011121314151617181920212223func subsets(nums []int) [][]int { n := len(nums) ans := make([][]int, 0, 1<<n) // 预分配空间 path := make([]int, 0, n) // 预分配空间 var dfs func(int) dfs = func(i int) { if i == n { // 子集构造完毕 ans = append(ans, slices.Clone(path)) // 复制 path return } ...
闭包介绍
为什么闭包能共享变量 pre?在提供的代码中,闭包能够共享变量 pre 的关键在于 词法作用域(Lexical Scoping) 和 闭包捕获变量 的特性: 1234567891011func isValidBST(root *TreeNode) bool { pre := math.MinInt64 // 外层函数变量 var dfs func(*TreeNode) bool dfs = func(node *TreeNode) bool { // 这里可以访问并修改外层的 pre 变量 if node.Val <= pre { ... } pre = node.Val } return dfs(root)} 工作原理: 词法作用域: Go 中函数可以访问定义时所在作用域的所有变量 dfs 匿名函数定义在 isValidBST 函数体内,自然能访问...
comet 生成临时文件导致磁盘满
解决方案出现 OSError: [Errno 28] No space left on device 错误的原因是系统磁盘空间不足,尤其是在临时目录(如 /tmp)中。以下是分步解决方案: 1. 检查磁盘空间在终端运行以下命令,查看磁盘使用情况: 1df -h 2. 清理临时文件删除临时目录中的旧文件(确保无重要进程依赖这些文件): 1sudo rm -rf /tmp/* 3. 查找并删除大文件使用以下命令定位大文件: 12345# 查看根目录下各文件夹的大小sudo du -sh /* | sort -hr# 查找当前目录下大于 1GB 的文件find / -type f -size +1G -exec ls -lh {} \; 删除不再需要的大文件(如旧日志、缓存等)。 4. 清理系统缓存和日志12345678# 清理 APT 缓存(适用于 Ubuntu/Debian)sudo apt-get clean# 清理旧版 Linux 内核(谨慎操作)sudo apt-get autoremove --purge#...
Windows Git自动转换为Linux换行符
在 Git 中处理不同操作系统(Windows/Linux/macOS)的换行符(LF 和 CRLF)时,自动转换是关键。以下是配置 Git 自动处理换行符的方法: 1. 核心配置:core.autocrlf通过设置 core.autocrlf 属性,让 Git 自动转换换行符: 不同操作系统的推荐设置 Windows(推荐): 12git config --global core.autocrlf true# 提交时转换为 LF,检出时转换为 CRLF Linux/macOS(推荐): 12git config --global core.autocrlf input# 提交时转换为 LF,检出时不转换 2. 强制规范:.gitattributes 文件在项目根目录创建 .gitattributes 文件,优先级高于全局配置,适合团队协作。 示例配置:1234567891011# 所有文本文件使用 LF 换行符* text=auto eol=lf# 排除二进制文件(避免误处理)*.png binary*.jpg...
更新网页url后,恢复valine网页评论
由于Valine 是无后端评论系统,所以也就没有开发评论数据管理功能。请自行登录Leancloud应用管理。具体步骤:登录>选择你创建的应用>数据存储>结构化数据>选择ClassComment,然后就可以尽情的发挥你的权利啦(~ ̄▽ ̄)~ 修改 对应url 列为当前url 参考:https://valine.js.org/quickstart.html
数据结构设计专题
数据结构设计 LeetCode 力扣 难度 是否完成 146. LRU Cache 146. LRU 缓存 🟠 202050306🟢 460. LFU Cache 460. LFU 缓存 🔴 🔴 729. My Calendar I 729. 我的日程安排表 I 🟠 🔴 950. Reveal Cards In Increasing Order 950. 按递增顺序显示卡牌 🟠 🔴 1700. Number of Students Unable to Eat Lunch 1700. 无法吃午餐的学生数量 🟢 202050307🟢 155. Min Stack 155. 最小栈 🟠 🔴 1670. Design Front Middle Back Queue 1670. 设计前中后队列 🟠 🔴 895. Maximum Frequency Stack 895. 最大频率栈 🔴 🔴 224. Basic Calculator 224. 基本计算器 🔴 🔴 227. Basic Calculator...