- 博客(26)
- 资源 (3)
- 收藏
- 关注
原创 排列
字符串下一个pailie#include #include #include #define MAXLINE 4096void next_permutation(char *str); //下一个排列void prev_permutation(char *str); //上一个排列void random_shuffle(char *begin,char *end
2014-09-17 23:21:42 696
原创 排序
考研好无聊,sick of examinations..../***************************************************** *author:chen xin *email:cx2pirate@gmail.com *date:2014.09.08 * **********************************************
2014-09-09 23:18:42 627
原创 B树
/************************************************ *作者:陈新 *时间:2014 6.3 *邮箱:cx2pirate@gmail.com * **********************************************/#ifndef _HEADER_BTREE_#define _HEADER_BTREE_#de
2014-06-07 14:07:13 772
原创 POJ1948
还以为有什么好的方法呢/************************************************************** 作者:陈新 邮箱:cx2pbirate@gmail.com 用途:pboj1948 时间:2014 4月13日 15:17 测试: 12749645 Will4944 1948 Accepted 10256K 219MS C+
2014-04-13 16:03:07 2020 1
原创 HDU1254
推箱子/************************************************************** 作者:陈新 邮箱:cx2pirate@gmail.com 用途:hdu1254_2 时间ﺿ014.3.31 21:11 测试ﺿ0447364 2014-04-01 08:51:18 Accepted 1254 15MS 296K 3724 B
2014-04-01 09:30:54 884
原创 HDU1237
/************************************************************** 作者:陈新 邮箱:cx2pirate@gmail.com 用途:hdu1237 时间:2014.3.4 23:17 编译环境 : g++ 数据:10308543 2014-03-15 20:45:36 Accepted
2014-03-15 20:49:25 672
转载 good job!
http://www.cppblog.com/amazon/archive/2009/09/04/95318.html感谢作者!共有两种库:一种是LIB包含了函数所在的DLL文件和文件中函数位置的信息(入口),代码由运行时加载在进程空间中的DLL提供,称为动态链接库dynamic link library。一种是LIB包含函数代码本身,在编译时直接将代码加入程序当中,称
2013-12-06 15:14:35 1230
原创 HDU1402
利用傅立叶变换可以把大数乘法时间控制在:O(n*lgn),首先把整数a1a2...an看作多项式f(x) = a1x + a2x^2 + .... an x^n(其中x取10),把整数乘法转换为多项式乘法,多项式一般乘法也要O(n*n)时间,而多项式点值表示法的乘法只需要O(n)的时间,于是就有了条折返路线,如下:1.首先把f(x)扩展为2n次多项式,取2n个点求多项式值 (O(nlgn))
2013-10-26 10:44:58 886
原创 3.Binary search
写这些只是可能是因为强迫症,总想完成这32个算法。。。Bentley在他的著作《Writing Correct Programs》中写道,90%的计算机专家不能在2小时内写出完全正确的二分搜索算法,感觉有点夸张,不过从刚开始接触c语言到数据结构算法,二分查找就一直没被忘记,如果还自称学过计算机,那就没理由忘记它!数据结构:排序的线性表时间复杂度:lg(n)代码:in
2013-09-06 21:25:18 615
原创 补码负数多一个的问题
这是一个困扰我许久的问题,总是似懂非懂,负数补码表示比原码多一个,8位为-128 -- 127,32位定点整数范围为-32768 -- 32767,有几个点有点感觉:1.负数零的原码补码相同10000000按照取反加1得到00000000,按照取模也是得到00000000所以就多了个10000000没有原码可以转换为它。2.那为什么又将它定位负数最小值?我是这样理解的,01111111(补
2013-07-07 22:56:23 3436
原创 搜索
A*搜索是最佳优先搜索最广为人知的形式,是一种有信息搜索策略,它的核心是一个估值函数:f(n)=g(n)+h(n),g(n)是从起始点到节点n的路径耗散,而h(n)是从节点n到目标节点的最低耗散路径的估计耗散值,因此f(n)=经过节点n的最低耗散解的估计耗散。完备性证明:A*搜索能够找到最低耗散解的依据是一个可采纳启发式:h(n)不会高估经过节点n的实际耗散,采用可采纳启发式h(n)如果有个非
2013-06-30 14:42:21 1015
转载 The Most Important Algorithms
The Most Important AlgorithmsAfter a long discussion with some of my RISC colleagues about what the 5 most important algorithms on the world are, we couldn't reach a consensus on this question. So
2013-06-30 11:26:20 712
原创 传教士与野人
仅供学习使用,还请大神多多指点! 传教士与野人问题描述:M个传教士和N个野人在河的一边,还有一条能载一个人或者两个人的船。找到一个办法让所有的人都渡到河另一岸,要求在任
2013-04-20 20:29:41 2341
原创 编码与运算原理
计算机中对二进制数的编码方式常见的有原码、反码、补码、移码。概念:1、原码:按照二进制权值进行编码。 2、反码:正数反码等于原码,负数反码为原码除去符号位各位取反。 3、补码:正数补码等于原码,负数补码 [x]补 = x + 2^n(n为二进制数的位数) 4、移码:[x]移 = x + 2^n理解:1、原
2013-03-25 11:15:21 1125
原创 计算几何
把草稿纸上的集合体转变成代码其中还是有很多细节问题需要注意的,《算法导论》主要介绍了叉积在几何学中的应用。向量的两个运算点积与叉积,点积:ab = |a||b|cos 叉积:a x b = |a||b|sin,由于叉积的形式与面积公式相似,也常用于计算多边形的面积,同时如果a x b > 0则a 向量在b向量的顺时针方向上,利用这个性质,《算法导论》介绍了凸包的求解方法。HDU2036就是利用
2013-03-17 13:49:51 703
原创 字符串匹配自动机
在长度为n的数组T[n]中查找一个长度为m的数组P[m],如果用朴素字符串匹配方法要用O(mn)的时间,用自动机匹配要O(n)的时间,但一般的自动机要O(ml)的时间(l为字符集的宽度),而KMP只要O(m)的预处理时间。其实最早接触字符串匹配自动机应该是在数字电路中的序列检测器那时候,序列检测器是用硬件区实现一个个状态的转换,这里和那儿是一个原理。主程序维持一个状态量mode是在读入某个字符
2013-03-11 21:33:45 904
原创 八数码问题(HDU 1043)
#include#include#include#include#include#include#define INF 400000#define END 322560using namespace std;struct NODE{ int board[3][3]; int x,y; int h,g; in
2013-01-08 23:26:18 649
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人