数据结构与算法

pg_auto_failover:一个业务连续性解决方案,高可用性和自动故障转移

转载自 pg_auto_failover简介:高可用性和自动故障转移Postgres扩展 在设计pg_auto_failover时,我们的目标是:为Postgres提供易于设置的业务连续性解决方案,该解决方案实现系统中任何一个节点的容错能力。 重要的是要了解pg_auto_failover已针对业务连续性进行了优化。万一丢失单个节点,由于PostgreSQL同步复制,pg_auto_failove

【数据结构】二叉树的实现

   个人主页:@我要成为c嘎嘎大王 希望这篇小小文章可以让你有所收获!目录 一、树的概念及结构1.1 树的概念 1.2 树的表示 二、二叉树的概念及结构2.1 二叉树的概念2.2 特殊的二叉树  2.3 二叉树的性质 2.4 二叉树的存储结构2.4.1 二叉树的顺序存储结构2.4.2 二叉树的链式存储结构 2.5 二叉树的遍历2.5.1 前序遍历 2.5.2

【算法】快速排序

目录 一、递归版本 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 三路划分 三、非递归版本

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

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

深入理解MySQL

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

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

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

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

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

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

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

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

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