![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
math
your_answer
这个作者很懒,什么都没留下…
展开
-
利用python解决指派问题(匈牙利算法)
前言:最近在备战数模,看到了指派问题,饶有兴趣,百度上找了很多关于指派问题的解法,很明显用的是匈牙利算法,手工的计算,各种各种的博客都很详尽,大概都了解了具体原理(不懂的人可以自行百度),但是基本找不到算法实现,有了也很难去验证对不对。可能为了省时间吧(不想重新造轮子,懒),就想找找python有没有什么库函数可以实现,找了很多博客什么的,还是找不到。想着指派问题也是0-1规划,线性规划用的也是s原创 2018-01-25 12:01:57 · 29682 阅读 · 3 评论 -
python实现埃拉托色尼筛选法(素数筛选法)
def sieve_of_eratosthenes(n):#埃拉托色尼筛选法,返回少于n的素数 primes = [True] * (n+1)#范围0到n的列表 p = 2#这是最小的素数 while p * p <= n:#一直筛到sqrt(n)就行了 if primes[p]:#如果没被筛,一定是素数 for i in ra...原创 2018-03-05 21:09:18 · 7829 阅读 · 0 评论 -
用python快速求解斐波那契数列的某一项
其实斐波那契数列的形式大家都很清楚:然后会解常系数二阶齐次线性递归的都知道,它的特征方程和解为:那么fn的显式形式就很清楚了:那么用python解求某一项就很快了,要用到sympy这个包:import sympy as syn=sy.symbols('n')#约定变量f=1/sy.sqrt(5)*(((1+sy.sqrt(5)原创 2018-02-06 11:54:58 · 3032 阅读 · 1 评论 -
python之拟合
一、多项式拟合多项式拟合的话,用的的是numpy这个库的polyfit这个函数。那么多项式拟合,最简单的当然是,一次多项式拟合了,就是线性回归。直接看代码吧import numpy as npdef linear_regression(x,y): #y=bx+a,线性回归 num=len(x) b=(np.sum(x*y)-num*np.mean(x)*np.m原创 2018-01-29 15:28:08 · 49468 阅读 · 11 评论 -
用python画隐函数图像
显函数的画法的话,一般比较简单,一列x的数组,有对应的函数的话,就很容易弄出一列y的数组,然后通过plt.plot就能画出来了。可是隐函数的话,求出对应的y是比较难的,特别是多个y对应的时候。那么怎么办呢?还是要用到sympy这个库。代码:from sympy.parsing.sympy_parser import parse_exprfrom sympy import plot_impli原创 2018-02-02 20:38:37 · 17085 阅读 · 4 评论 -
python解常微分方程
一、sympy.dsolve首先,感觉最科学的是用sympy的dsolve解常微分方程,直接贴代码import sympy as sydef differential_equation(x,f): return sy.diff(f(x),x,2)+f(x)#f(x)''+f(x)=0 二阶常系数齐次微分方程x=sy.symbols('x')#约定变量f=sy.Functio原创 2018-02-02 00:03:16 · 51937 阅读 · 3 评论 -
python函数极小值
这里用到的是scipy.optimize的fmin和fminboundimport numpy as npfrom matplotlib import pyplot as pltfrom scipy.optimize import fmin,fminbounddef f(x): return x**2+10*np.sin(x)+1x=np.linspace(-10,10,n原创 2018-01-26 12:13:28 · 17286 阅读 · 6 评论 -
python求非线性方程的解/非线性方程组的解
用到的是scipy.optimize中的fsolve和root这两个函数,以下是简单使用:from scipy.optimize import root,fsolveimport numpy as npfrom matplotlib import pyplot as plt#求多元非线性方程组的解def f1(x): return np.array([2*x[0]**2+3*x[1原创 2018-01-26 11:58:23 · 25926 阅读 · 0 评论 -
python之微积分
一、微分微分的话其实比较简单,手工算其实可以的,但是遇到特别复杂的函数,还是计算机算比较省时间,用到了sympy,举一个例子吧import sympy as syx=sy.symbols('x')#约定变量xy=x**3+10+sy.sin(x)#这个sin是sy的sindy_dx=sy.diff(y,x)#常微分,写成dy_dx=sy.diff(y)也可以t=sy.symbols原创 2018-01-30 00:42:20 · 8985 阅读 · 1 评论 -
python手写多项式拟合、曲线拟合
上篇博客写完之后,终于发现自己线性回归入门!然后洗澡的时候就在想一个问题,线性回归会了,写线性拟合是完全没问题的,但是np库的多项式拟合到底是怎么做出来的呢?突然灵光一闪多项式拟合?多变量的线性回归?好像发现了什么?重新理清一下思路。什么是多项式拟合?对的,这个问题以前没有好好思考过,以前的直观感觉是,不就是给一些x,y的点,让一个多项式去拟合,使得这个多项式的曲线看起来大致符合那些点。等等,好像...原创 2018-04-26 18:24:08 · 5731 阅读 · 2 评论