算法 笔记18

Raft一致性算法

分布式的高可用方案都会考虑容灾, 那么redis高可用是如何做到故障自动切换的? 1 增加主客观下线判定。 对于主客观下线判定,当某个哨兵节点与主节点连接超时,则将其标志位主观下线,然后开始将主节点下线这个信息与其他哨兵节点同步,其他哨兵节点根据自身与主节点的通信情况,做出赞成或者否决票。 如果赞成 ......
一致性 算法 Raft

《李斌的笔记》全部文章目录、快速导航、持续更新

SAP开发/业务/方案/问答。我把自己的全部文章都整理成目录,放在这篇文章中以实现快速导航,这样更方便阅读,本章内容持续更新。 ......
笔记 目录 文章

【阅读笔记】五月

人们总是希望一切的事情都尽在掌握之中,所以总是试图在制定完美计划之后一路顺风顺水地执行下去。但是软件维护是一个提高混乱度(增加熵)的过程,所以出现前进两步,后退一步;甚至前进一步,后退一步都是很正常的。而且随着维护的深入,会发现用在修复原有设计上瑕疵的工作量越来越少,而早期维护活动本身所引起的漏洞的 ......
笔记

【阅读笔记】五月.

在设计的过程中,我们要做到自上而下的设计,在设计的每个步骤中,尽可能地使用级别较高的表达方法来表示概念和隐藏细节,直到必要的时候再进一步的细化。文中的这段话让笔者想起SICP中教授们试图传达给学生们的一个屠龙之术——“推迟做出决定的时机,因为只有尽可能地退出做出决定的时机,你之后的行为才不会被当下做 ......
笔记

【阅读笔记】五月..

进度落后往往并不是因为大灾难,而通常只是因为那些仅仅会导致延迟半天到一天的事件的堆积最终致使整个进度延期一年。 对于里程碑的确立,必须是具体的,特定的,可度量的事情,能够清晰定义。不能清晰定义的里程碑是难以处理的负担。 关键路径技术是衡量是否延期的重要方法,每个人都要尽量让自己的工作远离关键路径。 ......
笔记

【阅读笔记】四月.

作者将巴比伦塔失败的原因之一归结于缺乏交流,缺乏组织。而我们能从中得来的教训之一在大型软件开发,要无比重视交流的重要性。本书初版之后四十余年的现在,人们所发明的很多技术和规范很大程度上都是为了加强“交流”,减少不必要的交流,增加交流的效率——团队组织的目的是减少所需的交流和合作的数量。制定规范也是。 ......
笔记

阅读笔记 六月

第五章——画蛇添足: 第五章主要阐述了结构师在开发第二个系统时,容易被诱惑开发更多的功能,从而达到不好的效果, 这应该被避免。大部分结构师在开发第一个系统时,由于技术不够成熟,所以他会谨慎仔细地工作。对 于不断产生的装饰和润色功能,大部分都被搁置在一 边,作为“下一个”项目的内容。而在开发第二个系 ......
笔记

算法题总结-找零钱

原题 给定数组arr,arr中所有的值都为正整数且不重复。每个值代表一种面值的货币,每种面值的货币可以使用任意张,再给定一个aim,代表要找的钱数,求组成aim的最少货币数。 如果无解,请返回-1. 数据范围:数组大小满足 0 \le n \le 100000≤n≤10000 , 数组中每个数字都满 ......
算法

18-状态机

# 1.状态机 FPGA是并行执行的,如果想要处理具有前后顺序的事件就要使用状态机 ## 1.1 状态机是什么? * 状态机简写为 FSM(Finite State Machine),也称为同步有限状态机,我们一般简称为状态机,之所以说“同步”是因为状态机中所有的状态跳转都是在时钟的作用下进行的,而 ......
状态 18

算法题总结-01背包问题

01背包问题基本可以用一句话描述,i件物品中挑选若干不重复放入容量V的背包中,使得价值最大 核心转移方程为 ```python F[i][v] = max(F[i-1][v],F[i − 1, v − Wi] + Ci) ``` 方程就一个意思,i件物品的最大价值,可以划分为 i-1件物品的最大价值 ......
算法 背包 问题 01

算法刷题记录:P1563 [NOIP2016 提高组] 玩具谜题

###题目链接 https://www.luogu.com.cn/problem/P1563 ###题目分析 既然是环形问题,那么直接取模来进行模拟即可,注意**顺时针**和**逆时针** 顺时针的箭头是向左拐,是`+`,逆时针的箭头是向右拐,是`-` ###AC代码 ```c++ // Probl ......
算法 玩具 P1563 1563 NOIP

【翻译】使用深度强化学习发现更快的排序算法

[toc] > [Faster sorting algorithms discovered using deep reinforcement learning | Nature](https://www.nature.com/articles/s41586-023-06004-9) > 因为是机翻感 ......
算法 更快 深度

【技术积累】算法中的动态规划【二】

博客推行版本更新,成果积累制度,已经写过的博客还会再次更新,不断地琢磨,高质量高数量都是要追求的,工匠精神是学习必不可少的精神。因此,大家有何建议欢迎在评论区踊跃发言,你们的支持是我最大的动力,你们敢投,我就敢肝 ......
算法 动态 技术

BeanUtils.copyProperties笔记

阿里开发者手册: 【强制】避免用 Apache Beanutils 进行属性的 copy。 说明:Apache BeanUtils 性能较差,可以使用其他方案比如 Spring BeanUtils, Cglib BeanCopier,注意均是浅拷贝。 本笔记使用的是: org.springframe ......
copyProperties BeanUtils 笔记

构建之法阅读笔记07

10.1 典型用户和典型场景 1、怎样定义典型用户? 我们首先要定义用户的角色。正如戏剧中有正面和反面的角色,软件系统中也有受欢迎的和不受欢迎的典型用户。 受欢迎的典型用户——指那些按设计者的期望使用系统的用户,如“网站的购物者” 不受欢迎的典型用户——指那些有不正当目的的用户,如在一个房地产业主论 ......
笔记

「学习笔记」DP 学习笔记1

## 序列 DP > 一般序列 DP 核心思想:将序列的前 $i$ 个数的状态用一个更简单的形式表示出,并且体现出这些状态对后续的影响。 ### 题目 > ### ABC 267D > 给定一个序列 $a$,找到一个长度为 $m$ 的子序列 $b$,使得 $\sum b_i × i$ 最大。 $n, ......
笔记

密码学(4):常见对称算法

## 叨两句 密码系列文章,是对接第三方接口时接触到加解密,但是知识体系较乱。希望能整理常见证书、密钥、加解密方式这方面知识,用于简单理解和快速区分。 有些缺漏和待补充,后续慢慢完善。有任何问题欢迎提出,便于及时修正 ## 前言 块加密(分组加密):加密算法无法一次性处理过长的明文,这种情况下,将明 ......
密码学 算法 常见 密码

密码学(5):常见非对称加密算法

## 叨两句 密码系列文章,是对接第三方接口时接触到加解密,但是知识体系较乱。希望能整理常见证书、密钥、加解密方式这方面知识,用于简单理解和快速区分。 有些缺漏和待补充,后续慢慢完善。有任何问题欢迎提出,便于及时修正 ## 1.RSA算法 ### 1.介绍 ### 2.依赖的数学原理 1)将两个大 ......
密码学 算法 常见 密码

011 数据库学习笔记--游标

游标: 定义: 游标是对数据查询结果集的一种访问机制,允许用户对结果集进行逐条访问,即单条数据。 访问对象是,结果集 可以理解为定义在特定结果集上的指针,控制这个指针,遍历数据集或制定特定的行--对其进行读取或写入 作用: 定位到结果集中的某一行,对当期位置的数据进行读写 数据读取出来一般放到临时数 ......
游标 数据库 笔记 数据 011

“北大才子”卖猪肉年销售额18亿 读书有用无用?

“北大才子”卖猪肉年销售额18亿 读书有用无用? 北大高材生摆摊卖猪肉,自称给母校抹黑,20年后身家过亿 北大屠夫称大学生就业难关键在父母:大学生是普通教育 不要把自己当精英 ......
才子 猪肉 销售额 北大 有用

关于Diffie-Hellman密钥协议算法

Diffie-Hellman密钥协议算法是一种确保共享密钥KEY安全穿越不安全网络的方法,它是OAKLEY的一个组成部分, 由Whitefield与Martin Hellman在1976年提出。这个机制的巧妙在于需要安全通信的双方可以用这个方法确定对称密钥。 然后可以用这个密钥进行加密和解密。但是注 ......
密钥 Diffie-Hellman 算法 Hellman Diffie

《Frequency-based Randomization for Guaranteeing Differential Privacy in Spatial Trajectories》论文笔记

论文十问:Q1 论文试图解决什么问题? 空间轨迹数据会泄漏个人隐私。因此,为了保护用户的隐私和保护效用,本文提出了一种基于效率的随机化模型。 Q2 这是否是一个新的问题? Q3 这篇文章要验证一个什么科学假设? Q4 有哪些相关研究?如何归类?谁是这一课题在领域内值得关注的研究员? Q5 论文中提到 ......

算法基础(一):串匹配问题(BF,KMP算法)

好家伙,学算法, 这篇看完,如果没有学会KMP算法,麻烦给我点踩 希望你能拿起纸和笔,一边阅读一边思考,看完这篇文章大概需要(20分钟的时间) 我们学这个算法是为了解决串匹配的问题 那什么是串匹配? 举个例子: 我要在"彭于晏吴彦祖"这段字符串中找到"吴彦祖"字符串 这就是串匹配 这两个算法太抽象了 ......
算法 基础 问题 KMP BF

路由算法

一、RIP算法——内部网关协议 1.路由选择:基于距离向量,所以选择的是路由数最少得路径,而不一定是代价最小的路径 2.适用于小型互联网,允许一条路径最多只能包含15个路由器,当距离等于16时,表示不可达。 3.交换信息的特点:仅和相邻路由器交换信息,交换全部路由,按固定的时间间隔交换路由 4.坏消 ......
路由 算法

密码学(2):常见哈希算法

## 前言 ## 1.MD5算法 1. 说明 杂凑算法之一 2.格式 输入:不定长度信息 输出:固定长度128-bits 3.安全与使用 安全性:不再适合当前的安全环境。 使用:广泛应用于错误检查。 ## 2.SHA-1算法(sha1) 1.说明 杂凑算法之一 2.格式 输入:不定长度信息 输出:固 ......
密码学 算法 常见 密码

密码学(1):常见算法分类

## 前言 有任何问题欢迎提出,便于及时修正 >💡块加密(分组加密):加密算法无法一次性处理过长的明文,这种情况下,将明文以密钥长度分割,分成一个个固定长度的数据组(块),分别进行加密然后组合,该方式即为块加密,也称分组加密。 ## 1.哈希算法(散列算法、摘要算法) ### 1. 概念 1. H ......
密码学 算法 常见 密码

可持久化权值线段树 学习笔记

# 权值线段树 普通的线段树,一个 $[l,r)$ 的结点维护的是 $[l, r)$ 所有数的和之类的信息。权值线段树,$[l, r)$ 的结点维护的是 **全局** 有几个数落在 $[l, r)$ 内之类的信息。 # 可持久化权值线段树 普通的权值线段树只能查询 **全局** 内有几个数在 $[l ......
线段 笔记

18) Mediator pattern

类别: Behavioral Pattern 问题: encapsulate [ɪn'kæpsjʊleɪt] enclose in a capsule or other small container define an object that encapsulates how a set of o ......
Mediator pattern 18

【黑马C++笔记】(二)实战:通讯录管理系统

# 通讯录管理系统 ## 1、系统需求 通讯录是一个可以记录亲人、好友信息的工具。 本教程主要利用C++来实现一个通讯录管理系统 系统中需要实现的功能如下: * 添加联系人:向通讯录中添加新人,信息包括(姓名、性别、年龄、联系电话、家庭住址)最多记录1000人 * 显示联系人:显示通讯录中所有联系人 ......
黑马 实战 管理系统 通讯录 通讯

【黑马C++笔记】(一)C++基础语法入门

# C++基础入门 ## 1 C++初识 ### 1.1 第一个C++程序 编写一个C++程序总共分为4个步骤 * 创建项目 * 创建文件 * 编写代码 * 运行程序 #### 1.1.1 创建项目 ​ Visual Studio是我们用来编写C++程序的主要工具,我们先将它打开 ![image]( ......
黑马 语法 基础 笔记