数据结构与算法

Python容器-3·字典

一、字典的定义 dict: dictionary(字典) 是 除列表以外Python之中 最灵活的数据类型 字典同样可以用来 存储多个数据,通常用于存储 描述一个 物体 的相关信息 和列表的区别 : 列表 是 有序 的对象集合 字典 是 无序 的对象集合 字典用 {} 定义 字典使用 键值对 存储数据,键值对之间使用,分隔 键 key 是索引 值 value 是数据 键 和 值 之间使

【高阶数据结构】B树、B+树、B*树

B树、B+树、B*树 1. 常见的搜索结构 2. B树概念 3. B树的插入分析 4. B树的插入实现 4.1 B树的节点设计 4.2 B树的部分插入实现1 4.3 B树的查找 4.4 B树的部分插入实现2 4.5 插入key的过程 4.7 B树的插入完整代码 4.8 B树的简单验证 4.9 B树的删除 4.10 B树的性能分析 5. B+树 6. B*树

深度解析之算法之分治(快排)

44.颜色分类题目链接 给定一个包含红色、白色和蓝色、共 n 个元素的数组 nums ,原地 对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。必须在不使用库内置的 sort 函数的情况下解决这个问题。示例 1:输入: nums = [2,

力扣hot100_矩阵(重制版)_python版本

一、73. 矩阵置零 思路: 遍历全部元素,遇到为0的行、列就保存行号,列好(这里要使用字典,为了去重) 代码: class Solution: def setZeroes(self, matrix: List[List[int]]) -> None: "&#3

【优选算法 | 双指针】双指针大揭秘:如何用两根指针优化你的代码

算法 相关知识点 可以通过点击 以下链接进行学习 一起加油! 在本篇文章中,我们将深入探索双指针算法的奥秘。从基础概念到实际应用,带你全面了解如何利用两根指针高效解决各种编程问题。无论你是刚接触算法的新人,还是希望提升代码性能的老手,双指针都是你不可忽视的利器! 🌈个人主页:

【优选算法】—移动零(双指针算法)

 云边有个稻草人-CSDN博客 想当一名牛×的程序员怎么能少的了练习算法呢?! 今天就立即开启一个新专栏,专干算法,提高算法能力(废柴的我也在准备蓝桥杯哈哈)—— 目录1.【 283. 移动零 - 力扣(LeetCode)】2.【算法原理 — 双指针算法】3.【编写代码】1.【

数据结构——排序算法第二幕(交换排序:冒泡排序、快速排序(三种版本) 归并排序:归并排序(分治))超详细!!!!

文章目录 前言 一、交换排序 1.1 冒泡排序 1.2 快速排序 1.2.1 hoare版本 快排 1.2.2 挖坑法 快排 1.2.3 lomuto前后指针 快排 二、归并排序 总结 前言 继上篇学习了排序的前面两个部分:直接插入排序和选择排序 今天我们来学习排序中常用的交换排序以及非常稳定的归并排序 快排可是有多种方法的,高速列车

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

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

完善系统的最后一公里,增加系统日志功能

当我们在开发一个系统的时候,随着规划的功能越来越多,按照复杂度和稳定性相反的原则,为了保证系统能够按照我们设想的目标运行,我们需要对系统的运行状况进行监控。 那么什么时候介入监控比较好?在系统功能开发的前期(还没有任何实质性的功能),似乎不太合适,那么在系统一切功能开发接近尾声的时候好像也不太合适,最好在这中间,选择一个迭代不是很紧急的阶段,系统已经有那么一个成熟的功能在用的时候,并且随着用户量的

SpringCloud微服务实战——搭建企业级开发框架(五十一):微服务安全加固—自定义Gateway拦截器实现防止SQL注入/XSS攻击

  SQL注入是常见的系统安全问题之一,用户通过特定方式向系统发送SQL脚本,可直接自定义操作系统数据库,如果系统没有对SQL注入进行拦截,那么用户甚至可以直接对数据库进行增删改查等操作。   XSS全称为Cross Site Script跨站点脚本攻击,和SQL注入类似,都是通过特定方式向系统发送攻击脚本,对系统进行控制和侵害。SQL注入主要以攻击数据库来达到攻击系统的目的,而XSS则是以恶意执