数据结构与算法
计算机网络自顶向下方法33——网络层 路由器工作原理 输入端口处理和基于目的地转发 交换 输出端口处理
网络层深度解析(二):路由器工作原理详解路由器是互联网的“交通枢纽”,其核心任务是以极高的速度将数据包从输入链路移动到正确的输出链路。理解其内部工作机制是理解网络层的关键。一、路由器总体架构一台路由器的核心组件可以抽象为四个部分,它们共同协作完成包转发任务:
输入端口:数据包进入的入口,
sql优化的N种方法
1.SQL语句中IN包含的值不应过多:
例如:select id from t where num in(1,2,3) 对于连续的数值,能用between就不要用in了; 实测速度差距不是很大.
image.png
2.SELECT语句务必指明字段名称:
禁止用 * 来查询 ,禁止用 * 来查询 ,禁止用 * 来查询 , 查找哪个字段,就写具体的字段.
select * from
【数据结构初阶】顺序结构二叉树(堆)接口实现超详解
文章目录
1.树
1. 1 树的概念与结构
1. 2 树的相关术语
1. 3 树的表示
1. 4 树形结构实际运用场景
2.二叉树
2. 1 概念与结构
2. 2 特殊的二叉树
2. 2. 1 满二叉树
2. 2. 2 完全二叉树
2. 3 二叉树存储结构
2. 3. 1 顺序结构
2. 3. 2 链式结构
3. 实现顺序结构二叉树
MySQL 查询优化(十):冷门知识—— MySQL自定义变量
MySQL 是可以自定义临时变量的,而临时变量在做查询优化和静态查询分析时十分有用。而实际上很少有人记得 MySQL 的自定义变量。本篇文章讲述 MySQL 的自定义变量的概念及特点。
MySQL 的自定义 就是存储值的临时容器,只要与服务端的连接是活跃的,容器中的值可以保存和使用。可以通过简单的 SET 或 SELECT语句 设置自定义变量,如下所示:
SET @one := 1;
SET
21个MySQL表设计的经验准则
1.命名规范
数据库表名、字段名、索引名等都需要命名规范,可读性高(一般要求用英文),让别人一看命名,就知道这个字段表示什么意思。
比如一个表的账号字段,反例如下:
acc_no,1_acc_no,zhanghao
正例:
account_no,account_number
表名、字段名必须使用小写字母或者数字,禁止使用数字开头,禁止使用拼音,并且一般不使用英文缩写。
主键索引名为pk_字段
MySql普通索引的管理
一、普通索引的使用规则:
一个表中可以有多个index
字段的值可以重复,且可以赋值为null
通常在where条件中的字段上配置Index
index索引字段的标志为MUL
二、普通索引的语法结构:
添加索引(新表)
CREATE TABLE 库.表(
字段列表 ,
INDEX(字段名) ,
INDEX(字段名)
);
添加索引(旧表)
CREATE INDEX 索引名 ON 库.
mybaits-plus优雅的实现数据权限
前言
项目使用mybaits-plus,所以在mybaits-plus的基础上增加数据权限的过滤
mybaits-plus自带数据权限支持,但由于系统数据权限相对复杂,通过查看文档发现好像并不适用,且原项目版本低,所以最终还是通过自己的方式实现
数据范围
我们系统相对复杂,比如可以按机构/用户等多种维度过滤,并且可以指定全局和某个特定接口的过滤方式
其实数据范围过滤落地也不过是:数据表的某字段限制
【React源码19】深入学习React 源码实现—— setState 中的双端环状链表处理
🧠 深入学习React源码实现之 setState 中的双端环状链表处理
一、引言:为什么 React 的 setState 需要使用双端环状链表?在 React 的早期版本中,setState 是一个同步更新操作,这导致频繁调用时容易造成性能瓶颈。随着 React Fiber 架构的引入(React 16&#
初识数据结构——Map和Set:哈希表与二叉搜索树的魔法对决
数据结构专栏 ⬅(click)
大家好!我是你们的老朋友——想不明白的过度思考者!今天我们要一起探索Java中两个神奇的数据结构:Map和Set!准备好了吗?让我们开始这场魔法之旅吧!🎩
🎯 先来点开胃菜:二叉搜索树(BST)
&
