摘要:
先使用先序的方法建立一棵二叉树,然后分别使用递归与非递归的方法实现前序、中序、后序遍历二叉树,并使用了两种方法来进行层次遍历二叉树,一种方法就是使用STL中的queue,另外一种方法就是定义了一个数组队列,分别使用了front和rear两个数组的下标来表示入队与出队,还有两个操作就是求二叉树的深度、结点数。。。[cpp]view plaincopy#include"iostream"#include"queue"#include"stack"usingnamespacestd;//二叉树结点的描述typedefstructBiTNod 阅读全文
摘要:
C-1 标准输出输入函数C -2 字元检查函数C -3 字串函数C -4 数学函数C -5 日期/时间函数C -6 工具函数C-1 标准输出输入函数FILE* fopen(const char* filename, const char* mode):使用mode模式开启参数filename的档案,传回档案串流,失败传回NULL.FILE* freopen(const char* filename, const char* mode, FILE* stream):关闭档案后重新开启档案.int fflush(FILE* stream):清除缓冲区的内容,成功传回0,失败传回EOF.int fc 阅读全文
摘要:
1,gets() 方法Q:以下代码有个被隐藏住的问题,你能找到它吗? 1 #include<stdio.h> 2 3 int main(void) 4 { 5 char buff[10]; 6 memset(buff,0,sizeof(buff)); 7 8 gets(buff); 9 10 printf("\n The buffer entered is [%s]\n",buff);11 12 return 0;13 }A:这个不显眼的问题就是使用了 gets() 方法。此方法接受一个string类型参数,但是却没有检测此数值是否有足够的空间来拷贝... 阅读全文
摘要:
原文:http://www.codeproject.com/cpp/complex_declarations.asp作者:VikramAPunathambekar介绍曾经碰到过让你迷惑不解、类似于int*(*(*fp1)(int))[10];这样的变量声明吗?本文将由易到难,一步一步教会你如何理解这种复杂的C/C++声明:我们将从每天都能碰到的较简单的声明入手,然后逐步加入const修饰符和typedef,还有函数指针,最后介绍一个能够让你准确地理解任何C/C++声明的“右左法则”。需要强调一下的是,复杂的C/C++声明并不是好的编程风格;我这里仅仅是教你如何去理解这些声明。注意:为了保证能够 阅读全文
摘要:
什么是好的程序员?是不是懂得很多技术细节?还是懂底层编程?还是编程速度比较快?我觉得都不是。对于一些技术细节来说和底层的技术,只要看帮助,查资料就能找到,对于速度快,只要编得多也就熟能生巧了。我认为好的程序员应该有以下几方面的素质: 1、有专研精神,勤学善问、举一反三。 2、积极向上的态度,有创造性思维。 3、与人积极交流沟通的能力,有团队精神。 4、谦虚谨慎,戒骄戒燥。 5、写出的代码质量高。包括:代码的稳定、易读、规范、易维护、专业。这些都是程序员的修养,这里我想谈谈"编程修养",也就是上述中的第5点。我觉得,如果我要了解一个作者,我会看他所写的小说,如果我要了解一个画 阅读全文
摘要:
1、基本定义。子串:字符串S的子串r[i...j]。后缀:以i开始的后缀表示为Suffix(i)。大小比较:按字典序。后缀数组:SA是一个一维数组。将S的后缀从小到大排序后,后缀的开头位置顺次放入SA。(SA[i]=j:排在第i个的是Suffix(j))名词数组:Rank[i]是Suffix(i)在... 阅读全文
摘要:
【1】一些定义:字符串:广义的字符串是指“元素类型有序,且元素值有一定范围的序列”,其元素不一定非要是字符,可以是数字等,因此整数、二进制数等也是字符串;字符集:字符串的元素值的范围称为字符集,其大小记为SZ。字符串的长度:字符串中元素的个数,一般记为N,长度为N的字符串A第一次提到时一般用A[0.... 阅读全文
摘要:
1 #include<time.h> 2 #include<stdio.h> 3 #include<stdlib.h> 4 //左子树比右子树高一 5 #define LH 1 6 //左子树和右子树一样高 7 #define EH 0 8 //左子树比右子树低一 9 #define RH -1 10 #define EQ(a,b) ((a) == (b)) 11 #define LT(a,b) ((a) < (b)) 12 #define LQ(a,b)((a) <= (b)) 13 14 typedef struct BSTNode 15 { 阅读全文
摘要:
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1042用数组来存储结果~~~代码: 1 #include <stdio.h> 2 #include <string.h> 3 #define N 50002 4 5 int a[N]; 6 7 void calculator(int n) 8 { 9 int i, j, c = 0;10 a[1] = 1;11 for(i = 1; i <= n; i++)12 {13 for(j = 1; j <= N; j++)14 {15 ... 阅读全文
摘要:
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1754区间求和问题~~~代码:#include <stdio.h>#define N 200002#define M 5002#define L(x) ((x)<<1)#define R(x) ((x)<<1|1)typedef struct{ int lson, rson; int val;} seg_tree;seg_tree s[N<<2];int num[N];int build(int left, int right, int idx){ s 阅读全文