重点知识
文章平均质量分 64
fangzhiyang
这个作者很懒,什么都没留下…
展开
-
分割
(1) n条直线最多分平面问题 题目大致如:n条直线,最多可以把平面分为多少个区域。 析:可能你以前就见过这题目,这充其量是一道初中的思考题。但一个类型的题目还是从简单的入手,才容易发现规律。当有n-1条直线时,平面最多被分成了f(n-1)个区域。原创 2011-10-07 13:04:31 · 349 阅读 · 0 评论 -
广度搜索
ACM入门(3)——图的遍历——广度优先搜索基本算法: 由Moore和Lee独立提出 给定图G和一个源点s, 广度优先遍历按照从近到远的顺序考虑各条边. 算法求出从s到各点的距离 广度优先的过程对结点着色. 白色: 没有考虑过的点 黑色: 已经完全考虑过的点 灰色: 发现过, 但没有处理过, 是遍历边界 依次处理每个灰色结点u, 对于邻接边(u, v), 把v着成灰原创 2011-11-29 17:34:30 · 758 阅读 · 0 评论 -
简单bfs 广度搜索
#include #include using namespace std; struct p { int x, y, d;};int vis[100][100], dis[100][100];int dir[4][2] = {{1,0},{-1,0},{0,1},{0,-1}};int main(){ char g[100]原创 2011-11-29 19:30:10 · 356 阅读 · 0 评论 -
fflush(stdin)
fflush(stdin) fflush(stdin) ; 清空输入缓冲区,通常是为了确保不影响后面的数据读取(例如在读完一个字符串后紧接着又要读取一个字符,此时应该先执行fflush(stdin);)。 详细解释一下: /*stdin就是标准输入 std即standard(标准),in即input(输入),合起来就是标准输入。 一般就是指键盘输入到缓冲区里原创 2011-11-09 18:32:54 · 2399 阅读 · 0 评论 -
二叉树非递归遍历
#includeusing namespace std;#define MaxSize 100//最多100个字符typedef struct node{ char data; struct node *lchild; struct node *rchild;}BTNode;void CreateBTNode(BTNode *&b,char *str){原创 2011-11-09 19:23:51 · 348 阅读 · 0 评论 -
#include <stdlib.h> 这个头文件是什么作用?
stdlib 头文件里包含了C、C++语言的最常用的系统函数 该文件包含了的C语言标准库函数的定义 stdlib.h里面定义了五种类型、一些宏和通用工具函数。 类型例如size_t、wchar_t、div_t、ldiv_t和lldiv_t; 宏例如EXIT_FAILURE、EXIT_SUCCESS、RAND_MAX和MB_CUR_MAX等等; 常用的函数如malloc()、calloc原创 2011-11-09 18:30:32 · 46047 阅读 · 0 评论 -
二叉树的 前序、中序、后序的代码实现(递归和非递归)
#include #include typedef struct bitnode { char data; struct bitnode *lchild,*rchild; }bitnode,*bitree;//二叉树节点类型和节点指针类型 bitree create()//先序创建 { bitree root=NULL; char c; scanf(原创 2011-11-09 18:11:19 · 633 阅读 · 0 评论 -
整数的划分
在正整数n的所有不同划分中,将最大加数n1不大于m的划分个数记为q(n,m)。可以建立q(n,m)的如下递归关系: q(n,m) = 1, n >= 1 当最大加数n1不大于1时,任何正整数n只有一种划分形式,n = 1 + 1 + 1 +...+ 1 q(n,m) = q(n,n), m >= n 最大加数n1实际上不能大于n原创 2011-12-03 12:12:51 · 429 阅读 · 0 评论 -
hdu 1312
Red and BlackTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 2719 Accepted Submission(s): 1794Problem DescriptionThere is a recta原创 2011-12-06 20:53:36 · 637 阅读 · 1 评论 -
错排原理
错排原理如下: 当n个编号元素放在n个编号位置,元素编号与位置编号各不对应的方法数用M(n)表示,那么M(n-1)就表示n-1个编号元素放在n-1个编号位置,各不对应的方法数,其它类推. 第一步,把第n个元素放在一个位置,比如位置k,一共有n-1种方法; 第二步,放编号为k的元素,这时有两种情况.1,把它放到位置n,那么,对于剩下的n-2个元素,就有M(n-2)种方法;2,原创 2012-01-27 14:44:26 · 814 阅读 · 0 评论 -
母函数知识
在数学中,某个序列的母函数是一种形式幂级数,其每一项的系数可以提供关于这个序列的信息。使用母函数解决问题的方法称为母函数方法。母函数可分为很多种,包括普通母函数、指数母函数、L级数、贝尔级数和狄利克雷级数。对每个序列都可以写出以上每个类型的一个母函数。构造母函数的目的一般是为了解决某个特定的问题,因此选用何种母函数视乎序列本身的特性和问题的类型。这里先给出两句话,不懂的可以等看完这篇文章再原创 2012-02-16 08:50:37 · 633 阅读 · 0 评论 -
卡特兰数
英文 Catalan数编辑本段原理 令h(1)=1,h(2)=1,catalan数满足递归式: h(n)= h(1)*h(n-1)+h(2)*h(n-2) + ... + h(n-1)h(1) (其中n>=3) 例如:h(3)=h(1)*h(2)+h(2)*h(1)=1*1+1*1=2 h(4)=h(1)*h(3)+h(2)*h(2)+h(3)*h(1原创 2012-03-04 20:26:07 · 1340 阅读 · 0 评论 -
n皇后
#includeusing namespace std;bool vis[3][30];//记忆数组判断列,主对角线,副对角线是否被占int ans=0,n;void dfs(int cur){ if(cur==n+1)//如果当前行数超过8(表明八个皇后已经放好)则结果加一,返回继续递归 { ans++; return ; } //vis[0][i原创 2012-04-17 09:05:49 · 603 阅读 · 0 评论 -
poj 2698 八皇后问题
#includeusing namespace std; bool vis[3][20];//记忆数组判断列,主对角线,副对角线是否被占 int ans=0,num=1; int p=0,pos[8]; void dfs(int cur); void print(); int main() { dfs(1);//初始化cur为0,即从第一行开始 re原创 2012-04-17 09:10:15 · 950 阅读 · 0 评论 -
BFS用栈弹出路径
#include #include #include using namespace std;struct p {int x, y, d;};int vis[100][100], dis[100][100],fy[100][100],fx[100][100];int dir[4][2] = {{1,0},{-1,0},{0,1},{0,-原创 2011-11-29 20:37:33 · 359 阅读 · 0 评论 -
赛题分析
听说过这种游戏吗?游戏者按规则在特殊棋盘跳动,将跳过的数字用加或减连起来,使得尽量接近零。棋盘如图,大小是中间行的方块数N(图中N = 4)。游戏者从底下开始,如图示方向到达最顶端,过程中不得跳出棋盘。最后把2N-1个数依次写下,在其中插入“+”或“-”,使结果接近零。如原创 2011-10-07 13:15:18 · 447 阅读 · 0 评论 -
排序qsort
学习心得:这个程序主要应用了qsort函数,由于一开始时没有注意到调用cmp函数时的形参应该是默认的整形指针,所以一直提示“15 H:\c\hdu2020.cpp invalid conversion from `int (*)(const int*, const int*)原创 2011-10-07 13:21:41 · 404 阅读 · 0 评论 -
hdu2048
/*#include #define DEBUG 1int main(){ #if DEBUG freopen("C:\\Documents and Settings\\Administrator\\桌面\\in.in","r",stdin) ;原创 2011-10-07 13:26:53 · 484 阅读 · 0 评论 -
线索二叉树
二叉树层次遍历和线索二叉树的程序层次遍历: #include typedef struct tagtree{ char ch; struct tagtree *lchild,*rchild; }tree; #define MAX 100 t原创 2011-11-15 19:46:42 · 389 阅读 · 0 评论 -
标签云
Android平台的标签云实现上一篇 /下一篇 2010-10-08 00:02:24 / 个人分类:Android/Ophone查看( 225 ) /评论( 1 ) / 评分( 0 / 0 ) 概要 标签云(Tag Cloud )是用以表示一个网站中内容的标签集合 。标签的排列顺序一般依照字典排序,或按照热门程度确定字体的大小原创 2011-11-15 20:02:37 · 579 阅读 · 0 评论 -
矩阵的压缩存储
矩阵: 矩阵是数值程序设计中经常用到的数学模型,它是由 m 行和 n 列的数值构成(m=n 时称为方阵)。在用高级语言编制的程序中,通常用二维数组表示矩阵,它使矩阵中的每个元素都可在二维数组中找到相对应的存储位置。然而在数值分析的计算中经常出现一些有下列特性的高阶矩阵,即矩阵中有很多值相同的元或零值元,为了节省存储空间,需要对它们进行"压缩存储",即不存或少存这原创 2011-10-28 15:41:39 · 2391 阅读 · 0 评论 -
KMP
个人觉得这篇文章是网上的介绍有关KMP算法更让人容易理解的文章了,确实说得很“详细”,耐心地把它看完肯定会有所收获的~~,另外有关模式函数值next[i]确实有很多版本啊,在另外一些面向对象的算法描述书中也有失效函数 f(j)的说法,其实是一个意思,即next[j]=f(j-1)+1,不过还是next[j]这种表示法好理解啊:转载 2011-10-28 15:46:05 · 453 阅读 · 0 评论 -
特殊矩阵的压缩存储
想 100% 精准定位合适的职位信息吗?请点击>>南方人才网站群:job168主站 | 软件动漫 | 南方猎头 | U校园招聘 | English | 职场形象馆English求职注册首 页招 聘求 职猎 头培 训报纸招聘名企/高薪原创 2011-10-29 15:43:24 · 2119 阅读 · 0 评论 -
稀疏矩阵的压缩存储及转置
/*稀疏矩阵的压缩存储及转置*/ #include using namespace std; /*三元组顺序表的类型定义*/#define itemSize 100 typedef struct{ int row,col; int item;}thNode; typedef struct{ thNo原创 2011-10-29 15:23:54 · 860 阅读 · 0 评论 -
对称矩阵压缩存储
#include using namespace std; int main() { int a[5][5] = {{1, 0, 2, 4, 3}, {0, 1, 3, 0, 2}, {2, 3, 1, 0, 0}, {4, 0, 0, 7, 8}, {3, 2, 0,原创 2011-10-29 15:25:18 · 1058 阅读 · 0 评论 -
稀疏矩阵
5.3.2 稀疏矩阵的压缩存储方法什么是稀疏矩阵?人们无法给出确切的定义,它只是一个凭人们的直觉来了解的概念。假设在m×n的矩阵中,有t个非零元素,若t远远小于矩阵元素的总数(即t精确点,设在矩阵A中,有t个非零元素。令,称δ为矩阵的稀疏因子。通常认为δ≤0.05时称之为稀疏矩阵。抽象数据类型稀疏矩阵的定义如下:ADT SpareseMatrix{数据对象:D={aij|i=1原创 2011-10-29 15:27:56 · 3389 阅读 · 0 评论 -
稀疏矩阵2
二、下面给出另外一种称之为快速转置的算法按M.data中三元组的次序进行转置,并将转置后的三元组装入T中恰当的位置。其算法思想为:对M扫描一次,按M第二列提供的列号一次确定位置装入T的一个三元组。具体实施如下:一遍扫描先确定三元组的位置关系,二次扫描由位置关系装入三元组。可见,位置关系是此种算法的关键。为了预先确定矩阵M中的每一列的第一个非零元素在数组B中应有的位置,需要先求得矩阵M中的每原创 2011-10-29 15:29:22 · 165 阅读 · 0 评论 -
最长公共子序列
/*#include #include #define MAX_LEN 1000char sz1[MAX_LEN];char sz2[MAX_LEN];int aMaxLen[MAX_LEN][MAX_LEN];int main(void){ while( scanf("%s%s", sz1+1 ,sz2+1 ) > 0 ) {原创 2011-11-02 17:54:49 · 336 阅读 · 0 评论 -
poj 2698 八皇后问题
#include int pos[736]={1,5,8,6,3,7,2,4,1,6,8,3,7,4,2,5,1,7,4,6,8,2,5,3,1,7,5,8,2,4,6,3,2,4,6,8,3,1,7,5,2,5,7,1,3,8,6,4,2,5,7,4,1,8,6,3,2,6,1,7,4,8,3,5,2,6,8,3,1,4,7,5,2,7,3,6,8,5,1,4,2,7,5,8,1,4,6,原创 2012-04-17 09:12:56 · 906 阅读 · 2 评论