数据结构与算法

【LeetCode原地复写零】:双指针+逆向填充,O(n)时间O(1)空间最优解!

🎁个人主页:User_芊芊君子 🎉欢迎大家点赞👍评论📝收藏⭐文章 🔍系列专栏:Java.数据结构 【前言】 本文聚焦 LeetCode“原地复写零”经典题目,核心需求是在固定长度数组中复写每个 0并右移其余元素,且需满足原地修改、不使用额外数组空间的

【5分钟背八股】 简述myisam和innodb的区别?

InnoDB存储引擎: 主要面向OLTP(Online Transaction Processing,在线事务处理)方面的应用,是第一个完整支持ACID事务的存储引擎(BDB第一个支持事务的存储引擎,已经停止开发)。 特点: 支持行锁 支持外键 支持自动增加列AUTO_INCREMENT属性 支持事务 支持MVCC模式的读写 读的效率低于MYISAM 写的效率高优于MYISAM 适合频繁修改以及

MyBatis源码第一天

一、MyBatis解析全局配置文件 1.MyBatis介绍 MyBatis是一个持久层的ORM框架,使用简单,学习成本较低。可以执行自己手写的SQL语句,比较灵活。但是MyBatis的自动化程度不高,移植性也不高,有时从一个数据库迁移到另外一个数据库的时候需要自己修改配置,所以称只为半自动ORM框架。 2.传统JDBC和Mybatis相比的弊病 2.1传统JDC 传统JDBC的问题如

【数据结构】String字符串的存储

目录一、存储结构1.字符串常量池2.字符串哈希表2.1结构2.2基础存储单位2.2.1键对象2.2.2值对象二、存储过程1.搜索2.创建三、存储位置四、存储操作1.new新建2.intern入池这是String类的详解:String类变量 一、存储结构 1.字符串常量池字符串常量池,配合着字符串哈希表,存储所有""引起来的 字符串字面

Mybatis的一级缓存和二级缓存,看完不再懵逼

缓存是什么? 缓存其实就是存储在内存中的临时数据,这里的数据量会比较小,一般来说,服务器的内存也是有限的,不可能将所有的数据都放到服务器的内存里面,所以, 只会把关键数据放到缓存中,缓存因为速度快,使用方便而出名! 为什么需要缓存 BS架构里面,用户的所有操作都是对数据库的增删改查,其中查询的操作是最多的,但如果用户想要某个数据时每次都去数据库查询,这无疑会增加数据库的压力,而且获取时间效率也会降

多线程事务怎么回滚

背景介绍 1.最近有一个大数据量插入的操作入库的业务场景,需要先做一些其他修改操作,然后在执行插入操作,由于插入数据可能会很多,用到多线程去拆分数据并行处理来提高响应时间,如果有一个线程执行失败,则全部回滚. 2.在spring中可以使用@Transactional注解去控制事务,使出现异常时会进行回滚,在多线程中,这个注解则不会生效,如果主线程需要先执行一些修改数据库的操作,当子线程在进行处理出

Python容器-3·字典

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

搞定!详解MeterSphere 配置外部Mysql5.7的全过程

最近试用了MeterSphere做接口测试平台,感觉使用起来非常方便,最重要的是开源免费!官方文档还是非常详细的,这里我就不多介绍了,感兴趣的同学可以参考: 经过讨论,决定在测试团队推广。由于公司数据库管理策略,数据库必须通过dba 统一管理,所以需要MeterSphere连接外部mysql数据库。数据库迁移过程中主

kraken2 微生物物种分类

kraken 是微生物组分析进行物种分类的工具,目前已经是第二代 kraken2 了。kraken2 对比 kraken 重点优化了数据库创建速度和数据库大小,以及分类速度。 kraken 用 k-mer 方法对输入数据的每一条序列进行分类分析。将每一条序列分成多个 k-mers, 每个 k-mer 在分类数据库寻找 LCA (lowest common ancestor), 序列所有 k-mer

Seurat分组随机选取细胞数实战(随机采样后找亚群DEG) 2022-06-01

关键词 随机取样细胞 Downsample cells 分组随机选取细胞 适用背景 之前的博客提到,R语言处理大数据效率较低,耗时长,一种解决方案是可以转用Python语言流程,但如果对Python语言比较陌生,任务又急,那可以采用另一种方案——分组随机取样。 尽管Seurat这个软件包功能极其强大,但是当细胞数达到几十万甚至上百万时,把常规流程跑一遍少则几天,多则几周,实在是极其消耗时间。而