算法
张传鑫
这个作者很懒,什么都没留下…
展开
-
栈:最小栈
设计一个支持 push ,pop ,top 操作,并能在常数时间内检索到最小元素的栈。push(x) —— 将元素 x 推入栈中。pop() —— 删除栈顶的元素。top() —— 获取栈顶元素。getMin() —— 检索栈中的最小元素。来源:力扣(LeetCode)155题解法一双栈,记录每一步的最小值,pop维护最小值栈class MinStack: def __init__(self): """ initialize your data .原创 2020-11-08 22:30:20 · 150 阅读 · 0 评论 -
匈牙利算法解决二分图匹配问题
匈牙利算法解决二分图匹配问题 匈牙利算法解决二分图匹配问题算法过程图示1、为‘1’寻找配对2、为‘2’寻找3、为‘3’寻找二、代码实现相关练习题目算法过程图示二分图存在下面的对应关系:图中有连线的两者表示在一起可以达成某种目标,现在我们要找出能够一对一并且配对数量最多的配对方式。1、为‘1’寻找配对配对1-a:2、为‘2’寻找2能够配对的a已经有1连接,但是2还能与c连接:3、为‘3’寻找与3配对的只有c,但是c已经和2连接了,这时我们看看2能不能把c腾出来接下来寻找原创 2020-08-27 21:54:00 · 402 阅读 · 0 评论 -
动态规划:最长上升子序列
动态规划:最长上升子序列(LIS)原文地址:http://www.cnblogs.com/GodA/p/5180560.html学习动态规划问题(DP问题)中,其中有一个知识点叫最长上升子序列(longest increasing subsequence),也可以叫最长非降序子序列,简称LIS。简单说一下自己的心得。我们都知道,动态规划的一个特点就是当前解可以由上一个阶段的解推出, 由此,把我们要求的问题简化成一个更小的子问题。子问题具有相同的求解方式,只不过是规模小了而已。最长上升子序列就符合这一转载 2020-07-06 00:23:45 · 250 阅读 · 0 评论 -
牛顿迭代法求近似解
牛顿迭代法求近似解牛顿迭代法(Newton’s method)又称为牛顿-拉夫逊(拉弗森)方法(Newton-Raphson method),它是牛顿在17世纪提出的一种在实数域和复数域上近似求解方程的方法。迭代公式为:xn+1=f(xn)/f′(xn)x_{n+1} =f(x_n)/f'(x_n)xn+1=f(xn)/f′(xn)华为机试:求立方根while True: try: y = float(input()) x = y/2原创 2020-07-05 22:57:48 · 3813 阅读 · 1 评论 -
最大公约数、最小公倍数
最大公约数、最小公倍数最大公约数最小公倍数最大公约数欧几里德算法(辗转相除法),用于计算两个正整数a,b的最大公约数两个整数的最大公约数等于其中较小的那个数和两数相除余数的最大公约数。最小公倍数最小公倍数为两数乘积与最大公约数的商。华为机试题目:华为机试题目def gcd(a,b): if a<b: t=a a=b b=t if b == 0: return a return gcd(b, a%b)原创 2020-07-05 22:19:54 · 155 阅读 · 0 评论 -
COURSERA:逻辑回归和梯度下降
原文链接: COURSERA:逻辑回归和梯度下降.logistic regressionlogistic regression相当于是神经网络中的一个神经元,在记录之前先约定一些符号x(i)指第i个样本本x^{(i)}指第i个样本本x(i)指第i个样本本xj(i)指第i个样本的第j个特征值x_j^{(i)}指第i个样本的第j个特征值xj(i)指第i个样本的第j个特征值z(i)指...原创 2020-03-25 01:01:38 · 82 阅读 · 0 评论