算法
jiao_giser
为了生活,冲鸭!
展开
-
基于C的sin(x)、cos(x)等三角函数以及exp(x)、ln(x)等指数对数函数的实现
**实现方法**我们可以通过泰勒展开式方便的实现这些函数。(感谢伟大的泰勒!)首先介绍一下泰勒公式。泰勒公式是将一个在x=x0处具有n阶导数的函数f(x)利用关于(x-x0)的n次多项式来逼近函数的方法。若函数f(x)在包含x0的某个闭区间[a,b]上具有n阶导数,且在开区间(a,b)上具有(n+1)阶导数,则对闭区间[a,b]上任意一点x,成立下式:通过在x0处N阶求导展开(常在...原创 2018-12-02 10:41:45 · 2597 阅读 · 0 评论 -
最短路径之Dijkstra算法以及C语言实现
Dijkstra算法与Floyd算法是计算最短路径的经典算法。其中Dijkstra算法计算一个结点到其他结点的最短路径,Floyd算法计算所有结点之间的最短路径。Dijkstra算法1959年由Dijkstra提出,算法采用标号法,有两种标号,T 标号和P标号。T标号称为试探性标号(tentative label),P标号 为永久性标号(permanent label),给节点vi一个P标号表...原创 2018-12-02 21:51:00 · 11535 阅读 · 2 评论 -
位运算——进阶编程技巧
位运算即基于二进制的运算,是直接对内存数据进行处理的更符合计算机系统的运算。众所周知,计算机系统是基于二进制的,若我们能够在编程的时候使用位运算,则计算机能够更加容易“读懂”,从而大大提高代码运行速度。虽然位运算与我们日常经常接触的十进制的运算不同,可能会难以理解,但是为了进一步优化代码,我们必须去尝试使用位运算代替部分代码。位运算是前人留给我们的巨大的财富和强大的武器。本文将介绍位运算的类型...原创 2018-12-09 00:38:49 · 362 阅读 · 0 评论