- 博客(31)
- 资源 (2)
- 收藏
- 关注
原创 2014中兴笔试试题
1.c语言中的volatile关键字volatile关键字是一种类型修饰符,用它声明的类型变量表示可以被某些编译器未知的因素更改,比如 操作系统、硬件或者其它线程等。遇到这个关键字声明的变量,编译器对访问该变量的代码就不再进行 优化,从而可以提供对特殊地址的稳定访问。
2014-09-24 22:42:08 1234
原创 2014年中兴笔试试题
#include using namespace std;int fun (int n){ if (n < 2) { return 1; } else { return n * fun(n - 1); }}int main(){ int i; cin >> i; cout << fun(i) <<endl; retu
2014-09-23 21:36:55 757
原创 循环队列
#include using namespace std;const int QueueSize = 100;class CirQueue{private: int data[QueueSize]; ///存放队列元素的数组 int front, rear; ///队头和队尾指针public: CirQueue() { front = rear = 0; } ///
2014-09-21 22:30:29 665
原创 两个栈共享同一存储空间
#include using namespace std;const int StackSize = 100;class BothStack{private: int data[StackSize]; ///存放两个栈的数组 int top1, top2; ///两个栈的栈顶指针,分别为各自栈顶元素在数组中的下标public: BothStack()
2014-09-21 22:04:26 4109
原创 单链表的链接存储结构实现
#include using namespace std;class Node{public: int element; Node *next;};class List{private: Node *head;public: List();//无参构造函数 List(int a[], int n); //有参构造函数 ~List();//析构
2014-09-21 11:46:23 983
原创 类模板-template
template是声明各模板的关键字,表示声明一个模板,模板参数可以是一个,也可以是多个。声明类模板要增加一行: template如template其中的类型参数名为虚拟的类型参数名,以后会被实际的类型名替代。如例子中的dataType将会被int,float,char等替代。
2014-09-21 09:40:24 1419
原创 题目1519:合并两个排序的链表
题目描述:输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。(hint: 请务必使用链表。)输入:输入可能包含多个测试样例,输入以EOF结束。对于每个测试案例,输入的第一行为两个整数n和m(0下面一行包括n个数t(1输出:对应每个测试案例,若有结果,输出相应的链表。否则,输出N
2014-09-15 20:59:03 517
原创 追153_DE_SSD_CaChe要件开发总结
追153_DE_SSD_CaChe要件开发总结 时间:2014.8.1-2014.9.14个人担当:(1)RaidGroup 管理技能的控制; (2)RaidGroup 设定状态。任务安排:(1)前期的SD阶段:主要是对任务的整体规划,组织必须的表格、命令式样书、 Ope表; (2)中期的PG阶段:主要是通过代码
2014-09-14 19:38:33 630
原创 题目1511:从尾到头打印链表
题目描述:输入一个链表,从尾到头打印链表每个节点的值。输入:每个输入文件仅包含一组测试样例。每一组测试案例包含多行,每行一个大于0的整数,代表一个链表的节点。第一行是链表第一个节点的值,依次类推。当输入到-1时代表链表输入完毕。-1本身不属于链表。输出:对应每个测试案例,以从尾到头的顺序输出链表每个节点的值,每个值占一行。
2014-09-14 13:08:31 775
原创 题目1172:哈夫曼树 九度
题目描述:哈夫曼树,第一行输入一个数n,表示叶结点的个数。需要用这些叶结点生成哈夫曼树,根据哈夫曼树的概念,这些结点有权值,即weight,题目需要输出所有结点的值与权值的乘积之和。输入:输入有多组数据。每组第一行输入一个数n,接着输入n个叶节点(叶节点权值不超过100,2输出:输出权值。样例输入:5 1 2 2 5 9
2014-09-13 21:00:50 658
原创 题目1201:二叉排序树 -九度
题目描述: 输入一系列整数,建立二叉排序数,并进行前序,中序,后序遍历。输入: 输入第一行包括一个整数n(1 接下来的一行包括n个整数。输出: 可能有多组测试数据,对于每组数据,将题目所给数据建立一个二叉排序树,并对二叉排序树进行前序、中序和后序遍历。 每种遍历结果输出一行。每行最后一个数据之后有一个空格。
2014-09-13 18:27:01 465
原创 题目1078:二叉树遍历
题目描述:二叉树的前序、中序、后序遍历的定义:前序遍历:对任一子树,先访问跟,然后遍历其左子树,最后遍历其右子树;中序遍历:对任一子树,先遍历其左子树,然后访问根,最后遍历其右子树;后序遍历:对任一子树,先遍历其左子树,然后遍历其右子树,最后访问根。给定一棵二叉树的前序遍历和中序遍历,求其后序遍历(提示:给定前序遍历与中序遍历能够唯一确定后序遍历)。输入:
2014-09-13 18:05:37 607
原创 RMQ算法:区间最值问题
RMQ(Range Minimum/Maximum Query)问题是求区间最值问题。你当然可以写个O(n)的(怎么写都可以吧=_=),但是万一要询问最值1000000遍,估计你就要挂了。这时候你可以放心地写一个线段树(前提是不写错)应该不会挂。但是,这里有更简单的算法,就是ST算法,它可以做到O(nlogn)的预处理,O(1)地回答每个询问。 来看一下ST算法是怎么实现的(以最大
2014-09-13 11:37:29 637 1
原创 最短路径问题
#include #include #include #define MAXN 1017#define INF 0x3fffffffusing namespace std;int mat[MAXN][MAXN];int cost[MAXN][MAXN];int n,m;//n为结点数,m为道路数int MONEY[MAXN];int dijkstra (int s,int f)
2014-09-11 21:22:00 734
原创 数据结构--KMP算法
求串的模式值next[n]定义:(1)next[0]= -1 意义:任何串的第一个字符的模式值规定为-1。(2)next[j]= -1 意义:模式串T中下标为j的字符,如果与首字符相同,且j的前面的1—k个字符与开头的1—k个字符不等(或者相等但T[k]==T[j])(1≤k)。如:T=”abCabCad” 则 next[6]=-1,因T[3]=T[6](3
2014-09-09 22:20:24 579
原创 快速排序--陈惠南版
void qsort(int a[],int left,int right){ int i,j; if(left<right){ i=left; j=right+1; do{ do i++;while (a[i]<a[left]); do j--;while (a[j]>a[left]); if(i<j) swap(a[i],a[j]); }whil
2014-09-08 22:19:37 1335 1
原创 将一句话里的单词进行逆置,标点符号不逆置
#include #include #include using namespace std;string &ConvSent(const string &Sent, string &InvSent){ vector words; size_t i, beg, end; bool is_word = false; for (i = 0; i < Sent.length();
2014-09-08 21:44:52 684
原创 strstr()函数的具体实现
const char * MyStrStr(const char * string, const char * strCharSet){ char * p1 = const_cast (string); //去常量性 char * p2 = const_cast (strCharSet); char * pRet = NULL; while (*p1 != '\0') { cha
2014-09-08 20:29:59 722
原创 找到单向链表中间那个元素,如果有两个则取前面一个
找到单向链表中间那个元素,如果有两个则取前面一个typedef struct node{ int element; node * next;}Node;//p为指向单链表的第一个节点Node * FindMiddleElement(Node * &p){ Node * head = p; int n = 0; while (head != NULL) //统计节点个数 {
2014-09-08 16:02:05 2054
原创 现两个N*N矩阵的乘法,矩阵由一维数组表示
现两个N*N矩阵的乘法,矩阵由一维数组表示void MatrixMultiplication(int * pArry1, int *pArry2, int * pDestArry, int len){ int row ; int col; row= col = (int)sqrt((double)len); int i, j, k; int sum; for (i = 0; i <
2014-09-08 15:53:29 692
原创 虚函数表
一般继承(无虚函数覆盖) 下面,再让我们来看看继承时的虚函数表是什么样的。假设有如下所示的一个继承关系: 请注意,在这个继承关系中,子类没有重载任何父类的函数。那么,在派生类的实例中,其虚函数表如下所示: 对于实例:Derive d; 的虚函数表如下: 我们可以看到下面几点:1
2014-09-05 22:01:45 506
原创 爱立信笔试题目-mutable关键字
mutable:如果类的成员函数不会改变对象的状态,那么这个成员函数一般会声明成const的。但是,有些时候,我们需要在const的函数里面修改一些跟类状态无关的数据成员,那么这个数据成员就应该被mutalbe来修饰。
2014-09-01 21:57:58 664
原创 南京爱立信笔试一题
#include #include using namespace std; class base { public: base(){cout<<"base::base()\n";} virtual ~base(){cout<<"base::~base()\n"; } void func1() {cout<<"base::func1()\n";} virtual v
2014-09-01 21:47:13 1503
execl保存到数组
2015-12-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人