数据结构与算法

【mongoDB】mongoDB查看可回收空间

在mongoDB中删除数据并不会直接释放磁盘,而是产生很多碎片。 这些碎片会被mongoDB继续利用。当有新数据插入时,会重复利用这些碎片,而不需要新申请磁盘空间。 这会导致的问题是,磁盘可能一直处于高水位的使用水平,对运维来说是一个定时炸弹。 因为碎片只会被所属的库使用,但我们经常会新建很多库,这就导致磁盘越来越紧张。 登录mongos $ mongo --host xx.xx.xx.x

MySQL锁(深度解析)

1、锁的类型 InnoDB实现了如下两种标准的行级锁: 共享锁(S Lock):允许事务对一条行数据进行读取 排他锁(X Lock):允许事务对一条行数据进行删除或更新 如果一个事务T1已经获得了行r的共享锁, 那么另外的事务T2可以立即获得行r的共享锁, 因为读取并没有改变行 r 的数据, 称这种情况为锁兼容 (Lock Compatible)。 但若有其他的事务T3想获得行r的排他锁, 则

使用蛋白ID如何进行KEGG和GO富集分析

事由起因 昨天,有个童鞋咨询如何使用蛋白ID进行功能富集分析,功能富集分析主要是KEGG和GO。 思路 蛋白ID转UniProt数据库ID UniProt数据库ID转KEGG和GO号 使用KEGG和GO号进行富集分析 教程(实操开始) 蛋白ID数据类型 蛋白ID的数据是的使用;进行隔分的,如果要整理成一列数据,我最开始想到的就是使用sed进行处理。 「注

【数据结构】队列的完整实现

队列的完整实现 队列的完整实现 github地址 前言 1. 队列的概念及其结构 1.1 概念 1.2 组织结构 2. 队列的实现 接口一览 结构定义与架构 初始化和销毁 入队和出队 取队头队尾数据 获取size和判空 完整代码与功能测试 结语 队列的完整实现 github地址有梦想的电信狗 前言​ 队列(Queue)作为一

【MySQL】索引(B+树详解)

MySQL(五)索引一、索引的减I/O设计1.读取量2.搜索树2.1方向2.2有序3.分多叉3.1B树弊端:3.2B+树3.2.1非叶子-搜索字段3.2.1.1海量分叉3.2.1.1.1最大式3.2.1.1.2最快式3.2.1.2缓存内存3.2.1.2.1字段总量小3.2.1.2.2时间复杂度3.2.1.3区间搜索向下保留3.2.1.3.1过程3.2.1.3.2模式3.2.1.3.3效果3

七大排序算法深度解析:从原理到代码实现

1.排序 排序算法是计算机科学中最基础的技能之一,无论你是编程新手还是经验丰富的开发者,理解这些算法都能显著提升代码效率。本文将用最简单的方式,带你快速掌握七大经典排序算法的核心原理与实现。 1.1排序概念及其运用 排序是指将一组数据按照特定规则(如升序或降序)重新排列的过程。排序是计算机科学中最基础且重要的操作之

K 值选对,准确率翻倍:KNN 算法调参的黄金法则

目录 一、背景介绍二、KNN 算法原理2.1 核心思想2.2 距离度量方法2.3 算法流程2.4算法结构:三、KNN 算法代码实现3.1 基于 Scikit-learn 的简单实现3.2 手动实现 KNN(自定义代码)四、K 值选择与可视化分析4.1 K 值对分类结果的影响4.2 交叉验证选择最优 K 值五、KNN 算法的优缺点与优化5.1 优点5.2 缺

二叉搜索树·极速分拣篇」:用C++怒肝《双截棍》分拣算法,暴打节点删除Boss战!

【温馨提示,本文是理论文,手撕的文章还在加急处理中】前言:        程序员老张最近失业了。不是因为他写代码时把分号敲成了希腊字母“α”(虽然这确实发生过),而是因为他试图用一坨意大利面条——哦不,是一坨链表——给楼下菜鸟驿站的快递包裹做自动分拣。结果某位邻居收到了一箱猫粮和三双荧光绿洞洞鞋&#x

C++寻位映射的奇幻密码:哈希

文章目录 1.什么是哈希? 2.哈希的常见实现方法 2.1 直接定址法 2.2 除留余数法 3.哈希冲突 4.哈希冲突的解决 4.1 闭散列 4.1.1 线性探测 4.1.1.1 哈希表的基本数据结构 4.1.1.2 哈希表的key转换 4.1.1.3 哈希表的插入 4.1.1.4 哈希表的查找 4.1.1.5 哈希表的删除 4.