数据结构与算法

【数据结构】长幼有序:树、二叉树、堆排序与TOP-K问题的层次解析(含源码)

为什么我们要学那么多的数据结构?这是因为没有一种数据结构能够去应对所有场景。我们在不同的场景需要选择不同的数据结构,所以数据结构没有好坏之分,而评估数据结构的好坏要针对场景,就如我们已经学习的结构而言,如果在一种场景下我们需要频繁地对头部进行插入删除操作,那么这个时候我们用链表;但是如果对尾部进

【烧脑算法】Dijkstra 算法:解决最短路问题

目录前言核心思想Dijkstra经典题目743. 网络延迟时间3341. 到达最后一个房间的最少时间 I3342. 到达最后一个房间的最少时间 II3112. 访问消失节点的最少时间3604. 有向图中到达终点的最少时间2642. 设计可以求最短路径的图类1514. 概率最大的路径1631. 最小体力消耗路径1786. 从第一个节点出发到最后一个节点的受限路径数总结前言Dijkstra 算法是一种

算法思想总结:优先级队列

一、最后一块石头的重量. - 力扣(LeetCode)        我们每次都要快速找到前两个最大的石头进行抵消,这个时候用优先级队列(建大堆),不断取堆顶元素是最好的!每次删除堆顶元素后,可以自动调整,时间复杂度是logN。class Solution { public: i

腾讯一面:你平时怎么排查并调优慢 SQL 的

一、前言 上一篇我们说了 腾讯一面:说一说 MySQL 中索引的底层原理,相信你对索引有个很清晰的认识了,这一篇我们来说一说慢 SQL 的排查以及调优。为啥面试官要问这个问题,其实跟上一篇的索引底层原理有一定关联关系的,一般慢 SQL 很大一部分原因对索引底层原理不够特别了解导致的,比如没建索引、索引失效、索引没满足最左前缀匹配原则导致慢 SQL,像腾讯这样数据量很大的公司,人家肯定有专门的 DB

【知识】一款支持MySQL的在线免费ER模型设计工具freedgo

1. 摘要 给大家介绍一款在线ER模型生成的工具,可以针对多种数据库的DDL文件在线生成ER模型图表,支持MySQL、SQLServer、Oracle、PostgreSQL等数据库。 主要功能如下: (1)支持表的创建,同时可以根据数据库的类型不同编辑表结构、字段类型、主键、默认值、索引、备注信息等等 (2)支持视图,触发器,sequence,存储过程,函数的查看及编辑 (3)同步生

安卓开发-Room使用

今天在修改 Android TV 的Leanback中,view的展示顺序时,发现改为 tabData之后,安装重启 Launcher 数据没有变化。 应该是自己对 Room 的操作原理不清楚导致。 排查方式,通过 App Inspection 查看设备上的 对应数据是否真的修改了。 通过学习Room的原理,梳理项目代码,去找原因。 问题,找到对应代码修改完成之后,重新安装未生效 通过 Ctrl+

mysql之日志系统:SQL更新语句逻辑

mysql的2个重要日志:物理日志redo log和逻辑日志 binlog。 redo log: 保证crash-safe能力 每次事务的redo log持久化到磁盘:innodb_flush_log_at_trx_commit=1 每次事务的binlog 持久化到磁盘:sync_binlog=1 1、redo log WAL技术:Write-Ahead Logging,关键点是先写日志,在写磁