算法小白
牛顿迭代法 牛顿迭代法
牛顿迭代法(Newton’s method)又称为牛顿-拉夫逊(拉弗森)方法(Newton-Raphson method),它是牛顿在17世纪提出的一种在实数域和复数域上近似求解方程的方法。 当然,牛顿迭代法也是已知已知的实现求方根最快的方
2020-05-12
斯特林公式 斯特林公式
斯特林公式是用来估算阶乘的,n越大,结果越准确! 斯特林公式: 或更精确的: 或: 或: , 或: , 如果要计算N后得到的数字为几位数,则我们可以知道其位数等于lgN!+1; 代码如下: #
2020-05-12
快速幂 快速幂
一场梦,不怨也不恨,上了想象力的当。 快速幂,顾名思义,快速幂就是快速算底数的n次幂。其时间复杂度为 O(log₂n), 与朴素的O(n)相比效率有了极大的提高。 讲白了,就是你知道了n的n次方,要你求n的2n次方,你还会循环2n次去求n的
2020-05-12
辗转相除法和更相减损术 辗转相除法和更相减损术
高中学过的求大公约数的方法就是辗转相除法和更相减损术了。 辗转相除法递归版 #include <iostream> using std::cin; using std::cout; using std::endl; int gcd(
2020-05-12
取模运算(深层次理解) 取模运算(深层次理解)
之前一直觉得自己了解取模取余运算,知道最近看了C++ Primer,有这么一句话, 当我们赋给无符号类型一个超过它表示范围的值时,结果是初始值对无符号类型表示数值总数取模后的余数 才发现自己学知识真的止于皮毛。 定义给定一个正整数p,任
2020-05-12
hdu1004(map解法) hdu1004(map解法)
Let the Balloon RiseTime Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Othe
2020-05-12
关于memset 关于memset
被不了解memset狠狠的坑了一把,难受。 对于整型数组,若要是初始化为非0的值时应该使用for循环,字符型或0,用memset即可。 例如: #include<bits/stdc++.h> int main() { int
2020-05-11
const int p 和 int const p const int p 和 int const p
主要讲下这两者的区别及用法!高能区 const int* p 和 int const* p是完全等价的!const int* const p 和 int const const* p 是完全等价的! 下面举几个例子来分析: int x
2020-05-11
万能头包含的头文件 万能头包含的头文件
// C++ includes used for precompiling -*- C++ -*- // Copyright (C) 2003-2018 Free Software Foundation, Inc. // // This
2020-05-11
C++二维vector使用 C++二维vector使用
你再不来,我要下雪了。 记录下二维vector的遍历(输出) 注:二维vector的赋值不能跟二维数组一样用scanf或者cin写入 遍历(迭代器) 方法一 void print() { vector<vector<cha
2020-05-11
3 / 4