数据结构与算法

Select进阶查询·子查询

一、子查询定义: select查询命令里包含select查询命令,包涵的select 命令 放在() 里 包含的select查询命令可以在↓ where 命令之后、having命令之后 、from命令之后、select命令之后 二、命令格式: Where命令之后: SELECT 表头名列表 FROM 库.表 WHERE 表头名 判断符号 (SELECT查询命令); Having命令之后

深入理解MySQL

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

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

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

MongoDB丢数据问题的分析

坊间有很多传说MongoDB会丢数据。特别是最近有一个InfoQ翻译的Sven的一篇水文(为什么叫做水文?因为里面并没有他自己的原创,只是搜罗了一些网上的博客,炒了些冷饭吃),其中又提到了丢数据的事情。大家知道作为一个数据库来说,数据的持久性基本上是数据库的最低要求了。如果MongoDB真的有那么糟糕的数据安全问题,它早就在技术选择众多的今天被无情地淘汰掉了。那么真相到底如何呢? 实事求是地来说,

【设计模式】策略模式:可插拔算法,从硬编码到灵活适配,体会“算法解耦“思想

半桔:个人主页  🔥 个人专栏: 《设计模式》《手撕面试算法》《C++从入门到入土》 🔖恐惧囚禁人的灵魂,希望可以让你自由。《肖申克的救赎》 文章目录 一. 光头强转行 1.1 团结屯的故事 1.2 新工作,新需求 二. 光头强的OO天赋 三. 李老板的新需求

LeetCode 146. LRU Cache 题解

LeetCode 146. LRU Cache 题解题目描述请你设计并实现一个满足 LRU (最近最少使用) 缓存 约束的数据结构。实现 LRUCache 类: LRUCache(int capacity) 以 正整数 作为容量 capacity 初始化 LRU 缓存 int get(int key) 如果关键字 key 存在于缓存中,则返回关键字的值&#xff0

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

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

[算法]——前缀和(二)

 目录一、前言二、正文1. 寻找数组的中心下标1.1 题目解析1.2 算法原理1.3 具体代码2. 除自身以外数组的乘积2.1 题目解析2.2 算法原理2.3 具体代码​编辑三、结语一、前言         本文将继续为大家带来前缀和的讲解!!! 二、正文1. 寻找数组的中心下标1. 寻找数组的中心下标 - 力扣(Leet

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

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