
算法
zhishuang.rao
遇见更好的自己
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
kmp算法
【经典算法】--KMP转载 2016-01-28 10:00:07 · 239 阅读 · 0 评论 -
彻底理解Dij算法
理解什么是dij 简单来说,就是求最短路的一种算法理解dij的核心思想 百度给出:以起始点为中心向外层层扩展,直到扩展到终点为止 可咋理解这句话呢?层层扩展,咋扩展?什么是层? 别急,且听我一一道来: 1.dij以节点距源点的远近为依据,将其分为一层一层一个节点便是一层 2.我们来看其流程: a.首先找出距源点S最近的节点A,搜索A的所有出点,判断能否通过SA使S到A的出点的距离减原创 2016-01-30 16:41:43 · 11869 阅读 · 2 评论 -
筛选素数
/*首先给出惟一素因子分解定理:每个正整数都可以惟一地表示成素数的乘积,其中素数因子从小到大依次出现(这里的“乘积”可以有0个、1个或多个素因子)。*///方案一:遍历2——n,依次判断是否是素数,效率低下,咱们不讨论//方案二:利用素数的倍数不是素数来删除合数/* 1.给出要筛数值的范围n,找出n(实际上根号n即可)以内的素数p1,p2,p3.....2.先用p1去筛,即把p1留下原创 2016-05-20 19:48:33 · 395 阅读 · 0 评论 -
快速幂算法
转载自:http://blog.youkuaiyun.com/hkdgjqr/article/details/5381028 快速求正整数次幂,当然不能直接死乘。举个例子:3 ^ 999 = 3 * 3 * 3 * … * 3直接乘要做998次乘法。但事实上可以这样做,先求出2^k次幂:3 ^ 2 = 3 * 3 3 ^ 4 = (3 ^ 2) * (3 ^ 2) 3 ^ 8 = (3 ^ 4) * (3转载 2016-05-20 20:49:48 · 345 阅读 · 0 评论 -
归并排序
#include <iostream>#include <algorithm>#include <vector>using namespace std;/* *归并排序 *思想:将待排数组多次二分为单个数(递归),再回溯合并为有序序列 *步骤1:递归二分待排数组 *步骤2:将二分数组合并为有序序列,放在零时数组中 *步骤3:将零时序列赋值给待排序序列 *步骤4:回溯 *//*原创 2017-02-03 17:39:01 · 298 阅读 · 0 评论