#数据结构与算法

Adam 算法

Adam算法和传统的随机梯度下降不同。随机梯度下降保持单一的学习率(即alpha)更新所有的权重,学习率在训练过程中并不会改变。而Adam通过计算梯度的一阶矩估计和二阶矩估计而为不同的参数设计独立的自适应性学习率Adam算法的提出者描述其为两种随机梯度下降扩展式的优点集合,即:适应性梯度算法(AdaGrad)为每一个参...
代码星球 代码星球·2020-04-11

第十四章 数字签名算法--RSA

注意:本节内容主要参考自《Java加密与解密的艺术(第2版)》第9章“带密钥的消息摘要算法--数字签名算法”《大型分布式网站架构(设计与实践)》第3章“互联网安全架构”14.1、数字签名算法特点:非对称加密算法+消息摘要算法的结合体抗否认性、认证数据来源、防止数据被篡改(...

[区块链] 共识算法之争(PBFT,Raft,PoW,PoS,DPoS,Ripple)

  近几天对区块链中几种常见的共识机制(PBFT,Raft,PoW,PoS,DPoS,Ripple)进行了总结。尽量使用简单易懂语言,篇幅较大,想了解的可以只读每个算法介绍中前边的原理。本篇文章主要参考《区块链技术指南》,首先表示感谢!   ---Begin---  区块链架构是一种分布式的架构。其部署模式有...

动态规划(DP)算法

参考https://blog.csdn.net/libosbo/article/details/80038549 动态规划是求解决策过程最优化的数学方法。利用各个阶段之间的关系,逐个求解,最终求得全局最优解,需要确认原问题与子问题、动态规划状态、边界状态、边界状态结值、状态转移方程。 以下每个例题,...
代码星球 代码星球·2020-04-11

经典算法之快速选择算法

相信快速排序算法这种经典的算法大家并不陌生。但是基于快速算法的各种变形,你了解吗? 其中很重要的一种变形就是快速选择算法, 通常用来在未排序的数组中寻找第k小/第k大的元素。快速选择及其变种是实际应用中最常使用的高效选择算法。 快速选择的总体思路与快速排序一致,选择一个元素作为基准来对元素...
代码星球 代码星球·2020-04-11

最小生成树之克鲁斯卡尔(kruskal)算法

前面讲了最小生成树的Prim算法的实现思路是,通过顶点的扩展不断地寻找最小权重的生成树,而Kruskal算法是查找最小权值的边,然后逐渐把连通分量变为一个联结全部顶点的最小生成树。不同于Prim算法,这次用边集数组结构来实现Kruskal算法 结构很简单,包括权值,边的弧起点和终点的下标将前面Prim例子中的...

指派问题(匈牙利算法)

问题描述:在生活中经常遇到这样的问题,某单位需完成n项任务,恰好有n个人可承担这些任务。由于每人的专长不同,各人完成任务不同(或所费时间),效率也不同。于是产生应指派哪个人去完成哪项任务,使完成n项任务的总效率最高(或所需总时间最小)。这类问题称为指派问题或分派问题。指派问题也是0-1规划,线性规划用到的是官网scip...

【算法】快速幂运算

在计算xn 时,我们会怎么算呢?如果只是x*x*x*...*x 这样每个数乘起来计算n次的的话,虽然算法简单,但是复杂度为 O(n) ,往往不能满足要求。让我们来考虑加速幂运算的方法。如果 n=2k ,可以将其表示为  xn=((x2)2)...
代码星球 代码星球·2020-04-11

算法:拓扑排序

什么是拓扑排序  其实在写这篇博客的时候,我也是以一个学习者的角度出发的,目的就是想让自己理解和初步掌握拓扑排序。维基百科的定义如下:      在计算机科学领域,有向图顶点的线性排序就是其拓扑排序,例如,图形的顶点可以表示要执行的任务,并且边可以表示一个任务必须在另一个任务之前执行的约束;在这个应用中,拓扑排序只是一...
代码星球 代码星球·2020-04-11

一阶低通滤波算法

  一阶滤波,又叫一阶惯性滤波,或一阶低通滤波。是使用软件编程实现普通硬件RC低通滤波器的功能。   一阶低通滤波的算法公式为:              Y(n)=αX(n)+(1-α)Y(n-1)   式中:α=滤波系数;X(n)=本次采样值;Y(n-1)=上...
代码星球 代码星球·2020-04-11

算法设计与分析总结

算法分析的目的:估算该算法所需的内存空间和运行时间。分析算法复杂度的目的:用以比较同一问题的不同算法;时间和空间的增长率作为衡量的标准。算法是对解决这个问题的方法和步骤的描述。算法的基本特征:有穷性、确定性、可行性、0到多个输入、1到多个输出。一个好的算法应具有正确性、可读性、健壮性和高效性和低存储量需求等特征。递归的...
代码星球 代码星球·2020-04-11

数据结构设计——大数计算器

 1/* 2大数计算器 3 4实验目的:数据结构主要是研究计算机存储,组织数据,非数值计算程序设计问题中所出现的计算机操作对象以及它们之间的关系和操作的学科。数据结构是介于数学、计算机软件和计算机硬件之间的一门计算机专业的核心课程,它是计算机程序设计、数据库、操作系统、编译原理及...

农历天干地支算法

干支纪年法   一.十支纪年是我国传统的纪年方法。   1.干和支的含义:干支是天干,地支的合称。    干指天干,共有10个符号:    1 2 3 4 5 6 7 8 9 10   甲 乙 丙 丁 戊 己 庚 辛 壬 癸     支指地支,共有12个符号:    1   &n...
代码星球 代码星球·2020-04-11

【PMP】三点估算法

通过考虑估算中的不确定性和风险,可以提高持续时间估算的准确性。最可能时间(tM):基于最可能获得的资源、最可能取得的资源生产率、对资源可用时间的现实预计,资源对其他参与者的可能依赖关系及可能发生的各种干扰等,所估算的活动持续时间,这里简写为M最乐观时间(tO):基于活动的最好情况所估算的活动持续时间,这里简写为O最悲观...
代码星球 代码星球·2020-04-11

PageRank网页排名算法

互联网上各个网页之间的链接关系我们都可以看成是一个有向图,一个网页的重要性由链接到该网页的其他网页来投票,一个较多链入的页面会有比较高等级,反之如果一个页面没有链入或链入较少等级则低,网页的PR值越高,代表网页越重要假设一个有A、B、C、D四个网页组成的集合,B、C、D三个页面都链入到A,则A的PR值将是B、C、D三个...
首页上一页...104105106107108...下一页尾页