![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
时暑
衡量工程师的标准:创造力,学习能力,解决问题能力
展开
-
LeetCode刷题笔记(一)
1、Given an array of integers, return indices of the two numbers such that they add up to a specific target.You may assume that each input would have exactly one solution, and you may not use the sam...原创 2020-05-17 21:41:32 · 230 阅读 · 0 评论 -
Conway’s Game of Life介绍及实现
前言: 博主在看新闻时,浏览到John Horton Conway因新型冠状病毒感染而去世。这场疫情带走了许多领域杰出的大师们,希望全人类早日战胜疫情。 John Horton Conway的生命游戏为不少数学家和码农所熟知,本篇主要介绍了Conway’s Game of Life以及基于C++的实现。生命游戏规则:1、 生命游戏规则有些类似与围棋,游戏背景为假设有无尽...原创 2020-04-16 23:29:23 · 1946 阅读 · 0 评论 -
常见加密算法梳理(一)
前言在工程中往往需要用到加密算法,对数据进行加密或者生成数据的哈希值。在众多算法中,我们需要筛选的合适的算法来满足需求。本章主要向大家介绍主流的一些算法,并提出建议。一 对称加密算法对称加密算法就是加密和解密使用同一种密钥DES算法一种使用密钥加密的块算法,目前已经不能保证安全性,建议禁止使用。3DES算法是三重数据加密算法块密码的通称。它相当于是对每个数据块应用三次D...原创 2018-10-13 19:46:52 · 1230 阅读 · 0 评论 -
广度优先搜索介绍及其算法的实现(C++)
本章将讲述一种图算法------广度优先算法;该算法的应用领域有:1、编写国际跳棋AI,计算最少走多少步能获胜;2、编写拼写检查器,计算最少编辑多少个地方就可将拼错的单词改成正确的单词;3、根据人际关系,找到最近的医生等。有人会问“图”是什么?图由节点和边组成,一个节点可能有众多相邻的节点相连,这些节点成为邻居。而广度优先算法解决的就是二个节点间最短路径问题及是否能抵达...原创 2018-09-02 01:35:14 · 1567 阅读 · 0 评论 -
PID算法
今天在写文档时看见流程图中有PID算法,莫名熟悉,查了下是过程控制算法,对不起大学自动控制理论的老师-_-!PID算法在过程控制中,按偏差的比例(P)、积分(I)和微分(D)进行控制的PID控制器(亦称PID调节器)是应用最为广泛的一种自动控制器。对于于过程控制的典型对象──“一阶滞后+纯滞后”与“二阶滞后+纯滞后”的控制对象,PID控制器是一种最优控制。复习完毕。PID算法一般应用于将当前数值快...原创 2018-07-12 00:31:12 · 2943 阅读 · 0 评论 -
(三)如何确保消息的发送人,数字签名
上一章,所提到的单向散列函数基本能保证双方通信的安全性。但还是存在局限性,由于Alice和Bob端都掌握着共享密钥,那么对于第三方而言,无法确定被加密的包含散列值的密文到底是谁发送的。这种场景发生于Alice和Bob既需要保证双发通信的安全性而Alice和Bob端互相不可信任的状态下。 举上篇文章中的一个例子,软件开发商将散列值公布在官网上,用户下载软件后,通过官网知...原创 2018-06-19 00:03:42 · 369 阅读 · 0 评论 -
(二)如何确保数据一致性,单向散列函数
博主最近在做数据库加密项目,项目中需要实现数据库中数据密文与密钥异地存储,其功能已实现,但考虑到密钥在传输过程中虽然已经做了加密处理,但是第三方如果恶意替换数据包的话,还是会有安全隐患,应此需要保证二端传输接受到的数据一致性。生活中,也有不少地方需要保证,接收端和发送端接收到的消息需要保证一致性。例如软件的发行商如何保证自己所发行的软件和用户下载到的软件一致性,而没有被恶意篡改。这里就需要运用到单...原创 2018-06-17 00:30:40 · 807 阅读 · 0 评论 -
(一)算法时间复杂度和空间复杂度
博主近段时间接手的一个项目性能要求严格,在项目流程框架最优的情况下,项目性能离最终要求还差三倍。没办法,设备CPU是不可能更换的(垃圾CPU)。只能优化代码,其中最考验性能的是设计本地高速缓存模块用于缓解数据库的压力,对插入,批量删除,查询性能要求高,还需要支持开N个句柄一起工作。尝试参考了Memacache等不同的开源高速缓存进行设计,痛定思痛,准备重新捡起算法知识。算法算法是为了解决问题而...原创 2018-06-16 17:23:26 · 463 阅读 · 0 评论 -
随机数生成器,基于软件的伪随机数算法
在工程中有时候需要用到随机数函数来模拟一些情况,例如加密系统的密钥来源可以用随机数函数获取。一般来说随机数函数需要有以下性质:1:随机性,不存在统计学偏差,是完全散乱的数列。2:不可预测性:不能从过去的的数列推算出下一个出现的数3:不可重现性:除非数列保存下来,否则不能重新相同的数列(比较难)。根据以上三个性质,可以将随机数函数分为“弱伪随机数”,“强伪随机数”,“真随机数”。其中“真随机数”靠软...原创 2018-06-24 15:57:50 · 10183 阅读 · 1 评论