对编程相关技术分享

MySQL : 索引

MySQL 中的索引类似于书籍的目录,通过额外的数据结构来帮助数据库快速定位数据,而不必遍历整个表。 1. 索引的基本概念 2. 常见的索引类型 3. 索引的优缺点 4. 设计索引时的注意事项 5. 真实场景中的使用 6. 示例:用户表中的电子邮......

数据库 0 03-04-2025

MySQL 的存储引擎有哪些?它们之间有什么区别?

MySQL 支持多种存储引擎,每种引擎针对不同的应用场景提供了特定的特性和优化。下面是几种常见的存储引擎以及它们之间的主要区别: 常见存储引擎 1. InnoDB(重点) 2. MyISAM(重点) 3. Memory 4. CSV 5. Arc......

数据库 面试 0 02-04-2025

MySQL 索引的最左前缀匹配原则是什么

MySQL 的最左前缀匹配原则主要是针对复合索引(也称为联合索引)而言的。其核心思想是:只有查询条件中包含索引最左侧(第一列)开始的连续一段列,才能让 MySQL 有效地利用该索引。 一、 复合索引的结构 二、 最左前缀匹配原则的基本概念 三、 ......

数据库 面试 0 01-04-2025

为什么 MySQL 选择使用 B+ 树作为索引结构

MySQL选择使用B+树作为索引结构主要是因为B+树在数据存储、查询优化、范围查询等方面具有显著优势。 一、 B+树的结构特点 B+树是一种自平衡的多路查找树,它的特点包括: B+树图示 以下是一棵 B+ 树的典型结构(图源网络,侵删): 二、 ......

数据库 面试 0 01-04-2025

TypeScript:await 关键字

本文详细介绍了 TypeScript 中 await 的工作原理、语法要求、与 Promise 的关系以及实践中需要注意的问题,同时针对代码示例进行了优化和补充说明。 1. 基本概念 2. 语法要求 3. 工作原理 4. 与 Promise 的比......

前端 编程语言 0 30-03-2025

Armstrong公理

什么是Armstrong公理 Armstrong公理是一套规则,用来推导“函数依赖”关系。函数依赖是关系数据库设计中的核心概念,它指的是某个属性或属性组合能够决定另一个属性或属性组合的值。例如,如果我们知道某个学生的学号(假设学号是唯一的),那么......

数据库 软考 0 29-03-2025

堆排序

一、 堆的基本概念 堆是一种完全二叉树,可以分为两种类型: 堆排序通常使用大顶堆来实现升序排序。排序时,首先构建大顶堆,然后将堆顶元素与数组最后一个元素交换,再对剩余的部分重新构建大顶堆,如此循环,直到整个序列有序。 二、 堆排序的主要步骤: 1......

数据结构与算法 软考 0 23-03-2025

Java:Map 接口

在 Java 中,Map 是一种非常重要的数据结构,用于存储键值对(key-value pairs),它提供了一种将键映射到值的机制。 1. Map 接口详解 Java 中的 Map 接口定义了一种键值对的数据结构,其中: 主要方法 put(K ......

编程语言 0 22-03-2025

二叉平衡树

二叉平衡树(Balanced Binary Tree)是一种在操作效率上非常优秀的数据结构,其核心思想是保持二叉树的“平衡”,从而使树的高度尽可能低,以保证搜索、插入和删除操作都能在对数时间内完成。 一、 基本概念 二、 主要类型 1. AVL ......

数据结构与算法 软考 0 22-03-2025