JACIN Blog

TECH FOR CODING

Tech AI

166篇文章
2025 — 2026持续创作

全部

文章166

数据结构

散列表-介绍

目录 [[toc]] 概念 **散列表(Hash Table)**: 是一种根据**关键字 (Key)** 直接访问存储位置的数据结构。 通过**哈希函数**将关键字映射到表中的一个存储位置(数组下标),从而实现**接近 O(1)** 的平均插入、删除、查找效率。 | **名称** | **说明** | | ------------------- | ------------------------------------------…

·19 min read
散列表-介绍
数据结构

平衡二叉树AVL

目录 [[toc]] 概念 **定义**:任意结点的左、右子树高度差不超过 1。 **目的**:保证查找、插入、删除的时间复杂度始终是 O(log n)。 **维护方式**:插入或删除后,如果局部失衡,就通过旋转(单旋/双旋)来恢复平衡。 | **术语** | **说明** | | --------------------------------- | -----------------------------------------…

·9 min read
数据结构

哈夫曼树与哈夫曼编码

目录 [[toc]] 概念 **目的**:给出现频率高的符号分配更短的二进制码,频率低的分配更长的码,从而**降低加权平均码长**,实现无损压缩。 **性质**:它是所有“前缀码”(任一码字都不是另一码字的前缀)里**平均码长最优**的方案。 结论 哈夫曼树是一棵**满二叉树**(每个内部结点都有两个孩子)。 若有 n 个符号(叶子),则**结点总数**为 2n-1。 构造复杂度:用小根堆实现是 O(n\log n)。 解码方法:从根…

·7 min read
数据结构

关于“数据结构”类别

(将第一段替换为新类别的简要说明。此指导将显示在类别选择区域中,因此请尽量将其保持在 200 个字符以内。) 使用以下段落提供详细描述或者建立类别准则或规则: 为什么应使用此类别?它用来做什么? 此类别和我们已经有的类别究竟有什么不同? 此类别中的话题一般包含什么? 我们需要此类别吗?我们可以将其与其他类别或子类别合并吗?

·1 min read
Python 开发

Catch-All 路由

目录 [[toc]] 介绍 **✅ 什么是 Catch-All 路由?** > Catch-All 路由 指的是:一个能匹配“任意路径”的通配型路由。 它一般会使用 **路径参数 path 类型**,比如: 这个 / 开头的 /{full_path:path},意思是: • 匹配任何以 / 开头的请求; • 把完整的路径作为字符串传入 full_path; • 哪怕路径是 /foo/bar/hello.jpg,它也能匹配! 所以叫 C…

·15 min read
Python 开发

接口等幂处理

目录 [[toc]] 介绍 **✅ 什么是等幂(Idempotency)?** > 等幂 > > > **无论这个操作被执行多少次,结果都是一样的,不会因为多次执行而产生副作用。** 通俗一点说:**“点一次和点一百次,效果是一样的。”** **✅ 在接口中,什么是等幂操作?** 在 Web / API 开发中,一个 **等幂操作的接口**,意味着客户端(用户、服务、浏览器)**多次请求同一个接口,结果不变,也不会影响系统的状态或数据…

·18 min read
Python 开发

单例模式-介绍

目录 [[toc]] 介绍 **✅ 一、什么是单例模式?** > 一个类在整个程序运行过程中,只能被创建一次实例,且这个实例是全局共享的。 **✅ 二、为什么要用单例模式?** 适用于那些: • 系统中只应该有一个实例存在的对象 • 该对象需要被多个地方共享使用(比如:**配置类、数据库连接池、线程池、缓存、日志器**) 相关模式实现 **⭐ 方式一:最经典的懒汉式(线程不安全)** 只有在**第一次调用时**才创建实例,**之前不初…

·19 min read
数据库与缓存数据库

mysql错误码 2013 解决方案

目录 [[toc]] 以下的方案是 **脚本运行场景下** 是一个非常合理的 **轻量级连接管理方案。【不是特定接口下,而是面对长时间地读写数据库的脚本操作】** 有很多时候 有这样的情况发生,就是用脚本去爬某个服务,需要持续不断地写数据库,但是运行一段时间后出现了这样的错误: 这是 **MySQL 客户端(例如 Python、Go、Django、GORM 等)在执行 SQL 期间与 MySQL 服务端的连接中断**,是 **MySQ…

·15 min read
数据库与缓存数据库

乐观锁和悲观锁

目录 [[toc]] **悲观锁(Pessimistic Lock)** **✅ 核心思想:** 始终**假设最坏的情况**:别人一定会修改数据,所以每次读写都会加锁,确保操作安全。 **在读数据时就加锁,防止其他事务修改这条数据,确保当前事务后续的操作(尤其是写)是安全的。** 悲观锁就是 “**读时加锁**,确保写时没有并发冲突”,必须配合事务使用,**先查锁定,后更新提交**,这是它的核心机制。 **🛠 实现方式:** **数据…

·13 min read
数据库与缓存数据库

mysql中的锁

目录 [[toc]] **什么是“锁”?** *锁(Lock)**是数据库为保证多用户并发访问数据时,数据的一致性与完整性而采取的一种机制。 > 就像你在一个文档上修改,防止别人同时修改冲突,给它**上锁** 数据库主要有两类锁: | **分类** | **子类型** | **简要说明** | | ------------ | ---------------- | -------------------------------- |…

·15 min read