logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

红黑树remove操作

如果删除的是1个红色节点(父亲和孩子肯定是黑色),不影响该路径上黑色节点的数量,也不会导致删除后的红黑树出现连续两个红色节点的情况,所以不做任何调整工作如果删除的是1个黑色节点,那经过被删除节点的路径就会比其他路径上的黑色节点少一个,需要把被删除节点的孩子补上来,分2种情况:如果补上来的孩子是红色节点,直接把这个孩子涂成黑色, 调整完成如果补上来的孩子是黑色节点,那在当前的路径上没办法再补一个黑色

#算法#前端#数据结构
【拓扑排序】课程表系列

比如上图中,根据dfs,从0出发后会遍历到1、3,然后会遍历2(visited[2]=true、path[2]=true),遍历3(visited[3]=true、path[3]=true),遍历4(visited[4]=true、path[4]=true),遍历2,然而此时发现path[2]=true,出现环!开始执行 BFS ,不断弹出队列中的节点(表示修完一门课),减少相邻节点的入度(表示先

文章图片
#深度优先#算法
【单调栈】接雨水

接雨水时,以当前元素height[i]为右侧,当前栈顶元素height[mid]为底,出栈后的栈顶元素为左侧height[st.top()],形成的凹槽接雨水。例如当前元素height[i]为5时,当前元素是一直大于栈顶元素的,需要不断计算以不同的栈顶元素为底的容器接的雨水,直到栈顶元素不小于当前元素height[i]为止。单调栈是按照行方向来计算雨水,栈中按照栈底到栈顶,高度降序的方式存放对应的

#算法
git推送代码冲突解决

文章目录一、无需手动解决的冲突二、需要手动解决的冲突有如下场景:小张和啊亮都git pull,两个人本地都获取了V1版本的代码,然后啊亮在本地将代码更新到了V3,然后将V3 push到了远程,git server发现V3就是基于V1版本修改的,于是git server将版本更新到V3接着小张将本地基于V1的代码更改为V2后,也push到远程,此时git sever发现V2的代码基于V1修改的,并不

#git#github#node.js
MySQL 分库分表实践

一、为什么要分库分表二、库表太大产生的问题三、垂直拆分1. 垂直分库2. 垂直分表四、水平分库分表2. 测试水平分表

#数据库
C/C++数据库连接池项目

关键技术点MySQL数据库编程、单例模式、queue队列容器、C++11多线程编程、 线程互斥、线程同步通信和unique_lock、基于CAS的原子整形、智能指针shared_ptr、lambda表达式、生产者-消费者线程模型项目背景为了提高MySQL数据库(基于C/S设计)的访问瓶颈,除了服务器端增加缓存服务器缓存常用的数据之外(例如redis),还可以增加连接池,来提高MySQL的访问效率,

#c++#mysql
C++设计模式总结

一、单例模式一个类不管常见多少次对象,永远只能得到该类型一个对象的实例// p1、p2、p3指向同一对象A* p1 = new A();A* p2 = new A();A* p3 = new A();饿汉式单例模式: 还没有获取实例对象,实例对象就已经产生了优点:线程安全。对象存放在数据段,main函数还没有开始执行,对象就已经初始化好了,一定是线程安全的。缺点: 获取在软件启动的时候,并没有使用

#c++
二叉树从根结点到叶结点系列

算法思想:访问的当前结点为空时,直接退出当前函数访问的当前结点不空时,都将当前结点值存入数组。当前结点为叶结点时,就直接输出当前的数组。当前结点为内部结点时,直接递归地调用函数,访问下层结点注:pathpathpath表示访问当前结点时,传入函数的数组#include<iostream>#include<vector>using namespace std;struct T

爬虫中设置cookie保持登录状态

Cookie简介Cookie 并不是它的原意“甜饼”的意思, 而是一个保存在客户机中的简单的文本文件, 这个文件与特定的 Web 文档关联在一起, 保存了该客户机访问这个Web 文档时的信息, 当客户机再次访问这个 Web 文档时这些信息可供该文档使用。用于服务器识别区分不同客户端,从而做出不同的相应,返回不同页面。接下来要爬取本人QQ空间数据,对比设置Cookie和不设置Cookie的爬取效..

Python的内建数据结构总结

一、列表list1. 性质连续编址元素可以任意,可以是数字、字符串、对象、列表等列表是可变的2. 方法index(value) :返回第一个valuevaluevalue匹配的索引,匹配不到抛异常,O(n)count(value):返回列表中valuevaluevalue出现的次数,比较低效,O(n)len(list) :返回列表长度,直接返回list中的长度属性,O(1)append(value

    共 17 条
  • 1
  • 2
  • 请选择