数据结构与算法

MySQL学习笔记-执行过程和执行顺序

MySQL服务端是如何处理请求的,又是如何执行SQL语句的? 下面来学习一下。 MySQL整体的执行过程 连接器 连接器的主要职责就是: 1、负责与客户端的通信,是半双工模式,这就意味着某一固定时刻只能由客户端向服务器请求或者服务器向客户端发送数据,而不能同时进行,其中MySQL在与客户端连接TC/IP的。 2、验证请求用户的账户和密码是否正确,如果账户和密码错误,会报错:Access

MySql存储引擎使用及管理

一、查看支持的数据库引擎 Engine:引擎名称 Support:表示该数据库是否支持该引擎,DEFAULT为默认使用的引擎 Comment:引擎的功能描述 Transactions:是否支持事务 XA:是否支持事务回滚 Savepoints:是否支持外键 mysql> show engines; +--------------------+---------+-------

如何搞定MySQL锁(全局锁、表级锁、行级锁)?这篇文章告诉你答案!太TMD详细了!!!

概述 锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除传统的计算资源(CPU、RAM、I/O)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得尤其重要,也更加复杂。 MySQL中的锁,按照锁的粒度分,分为以下三类: 全局锁:锁定数据

基础算法篇(5)(蓝桥杯常考点)—动态规划(C/C++)

文章目录 动态规划 前言 线性dp 路径类dp 经典线性dp 背包问题分类 01背包问题 完全背包问题 多重背包 分组背包问题 混合背包问题 多维费用的背包问题 区间dp 动态规划 前言 在竞赛中,如果遇到动态规划的题目,只要不是经典题型,那么大概率就是以压轴题的形式出现 用动态规划解决问题的步骤:(递推形式) 1

深入浅出一下从电子商务到社交网络:排序算法在实际业务中的关键角色——动画可视化排序算法(完结撒花!)

本篇技术博文摘要 🌟 本文全面解析了排序算法的核心理论、经典实现及优化策略,构建了从基础到高阶的完整知识体系。通过动画可视化与多语言代码示例相结合的方式,系统阐述了以下内容:   排序基础与分类 定义与指标:排序的本质是调整数据顺序以满足单调性,评价维度涵盖时间复杂度、空间复杂度、稳定性与

代码走查(codereview)如何执行才能提升代码质量

    作为一名开发工程师,如何提升个人能力、减少bug的发生是一件非常重要的事情,它直接关系到了领导及项目组对你能力的认可。层出不穷的bug静下心来好好归类,无非是需求不明确、配置问题、请求参数问题、数据库读和写时的并发问题、越权问题、幂等性问题,进而导致了数据库锁表、空指针系统异常、内存溢出等现象。     很多公司都会做代码走查(codereview),走查过程中更多的是相关人员凭借自身的

【多目标进化算法】NSGA-II 算法(结合例子)

目录一、NSGA-II 是干什么的?二、通过一个简单例子来解释例子:挑选手机三、NSGA-II 解决步骤1. 初始化种群2. 非支配排序(Fast Non-dominated Sorting)3. 拥挤度距离(Crowding Distance)4. 选择 + 交叉 + 变异5. 合并种群、排序、更新四、最后结果(Pareto前沿)五、Python 简易实现一、NSGA-II 是干什么的?NSGA

深入理解MySQL

存储引擎 现在常用的存储引擎是InnoDB,以前常用的是MyISAM。 InnoDB 支持事务、支持行级锁、支持外键、支持崩溃后数据恢复、支持MVCC; InnoDB的锁算法: Record lock:记录锁,单个行记录上的锁 Gap lock:间隙锁,锁定一个范围,不包括记录本身 Next-key lock:record+gap 临键锁,锁定一个范围,包含记录本身 MyISAM 不支持事务、

MySQL优化(索引与查询优化)

MySQL优化(索引与查询优化) 1. 如何定位及优化SQL语句的性能问题? 对于低性能的SQL语句的定位,最重要也是最有效的方法就是使用执行计划,MySQL提供了explain命令来查看语句的执行计划。 我们知道,不管是哪种数据库,或者是哪种数据库引擎,在对一条SQL语句进行执行的过程中都会做很多相关的优化,对于查询语句,最重要的优化方式就是使用索引。 而执行计划,就是显示数据库引擎对于SQ

【算法】快速排序

目录 一、递归版本 1.1 hoare版本 1.2 挖坑法 1.3 lomuto前后指针版本  二、快排优化 2.1 时间复杂度的计算 2.1.1 理想状态 2.1.2 有序状态 2.1.3 大量重复数据    2.2 优化     2.2.1 随机选key      2.2.2 三数取中     2.2.3 三路划分 三、非递归版本