- 博客(15)
- 资源 (5)
- 收藏
- 关注
转载 高精度运算
<br /><br />#include <stdio.h><br />#include <string.h><br />#include <math.h><br />#include <malloc.h><br />int an,bn,fa=1,fb=1; /* 把an,bn,k设为全局变量,an纪录第一个高精度数组的位数,bn纪录第二个高精度数组的位数,k纪录输出结果的位数*/<br />char b1[250], b2[250]; /*纪录需要计算的两个高精度数据
2010-09-23 21:53:00
340
转载 大数问题:用字符串解决大数相加和相乘(转载)
<br />在ACM的题目中经常会遇到大数相加和相乘的问题,在有些公司的面试题中也有暗含要用大数才能解决的问题。比如:输入三个整数,写一个程序判断这个三个整数能否构成一个直角三角形。此题算法很简单,但是却暗含着结果可能溢出的问题。如果不会用大数,此题就无法给出完美的答案。<br />下面给出大数的乘法和加法算法:<br />1、加法:// assume m is bigger than n.<br />char* add(char *a, char *b, int m, int n)<br />{<br /
2010-09-23 21:41:00
470
转载 qsort() 用法详解
<br /> <br />用qsort快两年的时候了,却一直没有真正弄懂cmp函数的返回值1,-1,0的函数. 今天在做凸包时,郁闷了....所以请教了snoopy,终于弄懂了cmp返回值的意识:<br />int cmp(const void *a, const void *b)<br />返回正数就是说 cmp 传入参数第一个要放在第二个后面, 负数就是传入参数第一个要放第二个前面, 如果是 0, 那就无所谓谁前谁后..<br />下面就把snoopy曾经写的介绍qsort的完整版贴出来好了,我想有与我
2010-08-26 09:29:00
349
转载 ACM入门&&STL
<br /><br />1. ACM国际大学生程序设计竞赛简介<br />1) 背景与历史<br />1970年在美国TexasA&M大学举办了首次区域竞赛,从而拉开了国际大学生程序设计竞赛的序幕。1977年,该项竞赛被分为两个级别:区域赛和总决赛,这便是现代ACM竞赛的开始。在亚洲、美国、欧洲、太平洋地区均设有区域赛点。1995至1996年,来自世界各地的一千多支s代表队参加了ACM区域竞赛。ACM大学生程序设计竞赛由美国计算机协会(ACM)举办,旨在向全世界的大学生提供一个展示和锻炼
2010-08-25 17:27:00
939
转载 国外名牌大学课程链接
<br />一、伯克利 <br /><br />加州大学伯克利分校 http://webcast.berkeley.edu/courses.php <br /><br />作为美国第一的公立大学,伯克利分校提供了许多优秀教授的播客和视频讲座,可以跟踪最新的讲座。想看教授布置的作业和课堂笔记,可以点击该教授的网页,通常,他/她都会第一堂课留下网址。实在不行,用google搜搜吧! <br /><br />伯克利的视频都是.rm格式,请注意转换 <br /><br />二、麻省 <br /><br />麻省理工
2010-08-19 11:16:00
655
转载 Dijkstra 算法
<br /><br />绿色的是节点,红色的为权值,箭头为可通行的标志.<br /><br />现在我们要从 0 节点 到 12 节点 找一条最优路径:<br />首先咱们要解决NODE点存贮的信息(结构):<br />struct NodeBaseInfo<br />{<br /> unsigned short nNodeID; //番号<br /> unsigned long nMeasure; //权值<br /> NodeBaseInfo *pParent;
2010-08-17 16:21:00
541
转载 Dijkstra &&Floyd
<br /><br /> 在一个网络中,如果两个结点之间有直接的因果关系,则这两个结点直接连通,在连接<br />两个结点的弧上标上它的代价或权,值得注意的是这样的代价不一定是对称的,即A到B<br />的代价不一定等于B到A的代价,实际问题中以行船为例,有顺水和逆水的区别。在图G<br />中,给出两个结点求这样一条最短的路径,使经过这条路径上的代价之和最小,这就是最短<br />路径问题。<br /> 如果所有弧上的权都相等,则问题退化为求两个结点间的一条路径使经过的中间结点最<br />少。比如在
2010-08-17 11:40:00
343
转载 Miller - Rabin素数测试
<br />1、Miller - Rabin 素数测试<br />定义:令 n - 1 = ( 2^s ) * d,其中 s 是非负整数,d 是正奇数。若 a^d =1 ( mod n ) 或 a^((2^r)*d) = -1 ( mod n ),0 <= r <= s - 1,则称 n 通过以 a 为基的 R-M 测试。<br />定理:若 n 为奇合数,则 n 通过以 a 为基的 R-M 测试的数目最多为 ( n - 1 ) / 4, 1 <= a <= n - 1<br />这便是 Miller -
2010-08-17 11:03:00
629
转载 双皇后问题
<br /> N皇后问题是一个典型的需要用回溯算法来解决的问题。回溯算法可以用递归方法来实现,也可以用非递归方法来实现。用递归的方法来解决回溯的问题思路很清晰,但是耗费的内存资源较多,速度也较慢;非递归方法具有速度快和耗费较少内存资源的优点,但是程序的逻辑结构却很复杂——不过搞懂之后觉得也很简单。<br /> 递归实现:#include "stdio.h"<br />#include "stdlib.h"<br />#include "time.h"<br /><br />/* 记录当前
2010-08-16 11:00:00
613
转载 双向广度优先搜素
<br />双向广度优先搜索<br /> 广度优先搜索遵循从初始结点开始一层层扩展直到找到目标结点的搜索规则,它只能较好地解决状态不是太多的情况,承受力很有限。如果扩展结点较多,而目标结点又处在较深层,采用前文叙述的广度搜索解题,搜索量巨大是可想而知的,往往就会出现内存空间不够用的情况。双向搜索和A算法对广度优先的搜索方式进行了改良或改造,加入了一定的“智能因素”,使搜索能尽快接近目标结点,减少了在空间和时间上的复杂度。<br /> (1)搜索过程<br /> 有些问题按照广度优先搜索法则扩展结点的规
2010-08-14 15:55:00
502
转载 迭带加深搜索
<br />poj 2248 Addition Chains[迭代加深]<br />By admin 浏览(56)<br />题意:<br />加法链的定义是第一个元素是1,最后一个是n,所有元素从小到大排列,并且除了1之外任意一个元素都是前面两个元素的和(那两个元素可相同),给定n,求元素最少的加法链.<br />思路:<br />做这个题,特意学了下迭代加深搜索,模型是:<br />for(deep=1; 1; deep++)<br />{<br />dfs(0);<br />If(find = tru
2010-08-14 11:23:00
262
转载 迭带加深搜索
<br />poj 2248 Addition Chains[迭代加深]<br />By admin 浏览(56)<br />题意:<br />加法链的定义是第一个元素是1,最后一个是n,所有元素从小到大排列,并且除了1之外任意一个元素都是前面两个元素的和(那两个元素可相同),给定n,求元素最少的加法链.<br />思路:<br />做这个题,特意学了下迭代加深搜索,模型是:<br />for(deep=1; 1; deep++)<br />{<br />dfs(0);<br />If(find = tru
2010-08-14 11:22:00
379
转载 斐波那契矩阵
<br /><br />我们如下定义一个无限阶矩阵m<br />矩阵第0行正好是Fibonacci数列<br />也就是<br />m(0,0)=1,m(0,1)=2,m(0,2)=3, m(0,3)=5,m(0,4)=8,....<br />矩阵第k行中第一个数字是前面k-1行中都没有出现的最小正整数,<br />所以<br />m(1,0)=4,<br />而m(k,1)=2*m(k,0)-k (这个关系对于第0行也成立)<br />所以m(1,1)=2*4-1=7<br />而第k行后面的任意
2010-08-13 11:35:00
748
转载 NP P NPC 问题详解
<br /><br />你会经常看到网上出现“这怎么做,这不是NP问题吗”、“这个只有搜了,这已经被证明是NP问题了”之类的话。你要知道,大多数人此时所说的NP问题其实都是指的NPC问题。他们没有搞清楚NP问题和NPC问题的概念。NP问题并不是那种“只有搜才行”的问题,NPC问题才是。好,行了,基本上这个误解已经被澄清了。下面的内容都是在讲什么是P问题,什么是NP问题,什么是NPC问题,你如果不是很感兴趣就可以不看了。接下来你可以看到,把NP问题当成是 NPC问题是一个多大的错误。<br /><br />
2010-08-11 15:21:00
476
转载 NP P NPC 问题详解
<br /><br />你会经常看到网上出现“这怎么做,这不是NP问题吗”、“这个只有搜了,这已经被证明是NP问题了”之类的话。你要知道,大多数人此时所说的NP问题其实都是指的NPC问题。他们没有搞清楚NP问题和NPC问题的概念。NP问题并不是那种“只有搜才行”的问题,NPC问题才是。好,行了,基本上这个误解已经被澄清了。下面的内容都是在讲什么是P问题,什么是NP问题,什么是NPC问题,你如果不是很感兴趣就可以不看了。接下来你可以看到,把NP问题当成是 NPC问题是一个多大的错误。<br /><br />
2010-08-11 15:21:00
341
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人