- 博客(36)
- 资源 (11)
- 收藏
- 关注
转载 把二元查找树转变成排序的双向链表
题目: 输入一颗二元查找树,将该二元查找树转换成一个排序的双向链表。要求不能创建任何新的结点,只调整指针的指向。 转换成双向链表4=6=8=10=12=14=16首先,我们定义的二元查找树结点的数据结构如下:struct BSTreeNode{ int m_nValue; BSTreeNode * m_pLeft;
2015-01-09 01:10:39 480
转载 求一个整数数组中的所有子数组的最大和
今天,我们一起做一个题目,即求出一个整数数组中的所有子数组的最大和。[cpp] view plaincopy//求一个整数数组中的所有子数组的最大和 #include #include int GetMaxChildArraySum(int * pInput, int nLen, int * pOut) {
2015-01-09 01:08:55 1409
转载 定义一个栈的数据结构,要求实现一个min函数,每次能够得到栈的最小值,并且要求Min的时间复杂度为O(1)
具体实现代码如下:stack.h内容如下:[cpp] view plaincopy#ifndef _STACK_H_ #define _STACK_H_ #define NUM 256 typedef struct _tagStack { int m_Array[NUM]; int
2015-01-09 01:08:19 736
转载 在二元树中找出和为某一值的所有路径
具体实现代码如下:BSTree.h具体内容:[cpp] view plaincopy#ifndef _BSTREE_H_ #define _BSTREE_H_ typedef struct _tagBSTreeNode { int m_nVal; _tagBSTreeNode * m_pL
2015-01-09 01:07:18 462
转载 优先级队列
今天,我们的任务是实现一个优先级队列。具体实现如下:Compare.h具体内容如下:[cpp] view plaincopy#include using namespace std; templatetypename Type> class Compare{ //处理一般比较大小 publ
2015-01-09 01:06:29 415
转载 线索二叉树
今天,我们一起用C++实现一颗线索二叉树,具体代码如下:ThreadInorderIterator.h具体内容如下:[cpp] view plaincopy#include "ThreadTree.h" templatetypename Type> class ThreadInorderIterator{ public:
2015-01-09 01:05:38 478
转载 图
今天,我们一起来实践一下数据结构-图,具体实现代码如下:Edge.h具体内容如下:[cpp] view plaincopytemplatetypename DistType> struct Edge{ public: Edge(int dest, DistType cost) : m_ndest(dest), m_
2015-01-09 01:04:58 547
转载 顺序栈
今天,我们一起用C++写一个顺序栈,具体如下:SeqStack.h具体内容如下:[cpp] view plaincopytemplatetypename Type> class SeqStack{ public: SeqStack(int sz) :m_ntop(-1), m_nMaxSize(sz){
2015-01-09 01:04:07 485
转载 顺序队列
今天,我们一起实现一个顺序队列,通过它来熟练一下C++编程。SeqQueue.h具体内容如下:[cpp] view plaincopytemplatetypename Type> class SeqQueue{ public: SeqQueue(int sz) :m_nrear(0), m_nfront(0), m
2015-01-09 01:03:33 472
转载 顺序表
为了加深大家对C++的理解,我们还是继续通过实践的方式,今天,我们一起写一个顺序表,具体代码如下。Seqlist.h具体内容如下:[cpp] view plaincopyconst int DefaultSize = 100; template typename Type> class SeqList{ publi
2015-01-09 01:01:42 426
转载 双链表
今天,我们一起用C++写一个双链表,具体代码如下:DoubleList.h具体内容如下:[cpp] view plaincopy#include "NodeList.h" templatetypename Type> class DoublyList{ public: DoublyList() :he
2015-01-09 00:59:41 446
转载 树
今天,我们一起用C++写一颗树,目的是熟练C++的语法细节,具体如下:LinkQueue.h内容如下:[cpp] view plaincopy#include "QueueNode.h" templatetypename Type> class LinkQueue{ public: LinkQueue
2015-01-09 00:58:19 493
转载 插入排序
今天,我们一起来实现插入排序,具体如下:Data.h内容:[cpp] view plaincopytemplatetypename Type> class Element{ public: Type GetKey(){ return key; } void
2015-01-09 00:57:59 407
转载 二分插入排序
今天,我们一起用C++实现二分插入排序,具体如下。Data.h具体内容:[cpp] view plaincopytemplatetypename Type> class Element{ public: Type GetKey(){ return key; }
2015-01-09 00:48:06 480
转载 希尔排序
今天,我们一起用C++实现希尔排序,具体的代码如下:Data.h内容如下:[cpp] view plaincopytemplatetypename Type> class Element{ public: Type GetKey(){ return key; }
2015-01-09 00:46:36 473
转载 冒泡排序
今天,我们一起用C++写一个冒泡排序,目的就是通过不断地实践来熟练C++,具体代码如下:Data.h具体内容:[cpp] view plaincopytemplatetypename Type> class Element{ public: Type GetKey(){ return key;
2015-01-08 23:40:59 405
转载 选择排序
今天,我们一起用C++实现一个选择排序,帮助大家熟练C++的语法,具体内容如下:Data.h的内容:[cpp] view plaincopytemplatetypename Type> class Element{ public: Type GetKey(){ return key;
2015-01-08 23:21:06 432
转载 堆排序
今天,我们一起用C++实现堆排序,目的是熟练C++的语法,具体代码如下。Data.h具体内容如下:[cpp] view plaincopytemplatetypename Type> class Element{ public: Type GetKey(){ return key;
2015-01-08 23:20:32 445
转载 合并排序
今天,我们的目标就是一起用C++实现合并排序,具体代码如下。Data.h具体内容:[cpp] view plaincopytemplatetypename Type> class Element{ public: Type GetKey(){ return key; }
2015-01-08 23:18:59 434
转载 基数排序
今天,我们一起用C++实现基数排序,具体代码如下:Data.h具体内容如下:[cpp] view plaincopytemplatetypename Type> class Element{ public: Type GetKey(){ return key; }
2015-01-08 23:18:40 410
转载 链栈
今天,我们一起用C++写链栈,具体如下。LinkStack.h具体内容:[cpp] view plaincopy#include "StackNode.h" templatetypename Type> class LinkStack{ public: LinkStack() :m_ptop(NULL
2015-01-08 23:18:03 446
转载 链队
今天,我们一起用C++写一个链对,具体如下所示。LinkQueue.h具体内容如下:[cpp] view plaincopy#include "QueueNode.h" templatetypename Type> class LinkQueue{ public: LinkQueue() :m_prear(N
2015-01-08 23:17:31 431
转载 判断整数序列是不是二元查找树的后序遍历结果
题目:输入一个整数数组,判断该数组是不是二元查找树的后序遍历结果,如果是,返回true,否则返回假,具体实现如下:[cpp] view plaincopy#include using namespace std; //搜索树后序遍历数组最后一个是根,从数组头到第一个比根大的节点是左孩子,后面右孩子必须全大于根,递推 sta
2015-01-08 23:16:55 365
转载 查找最小的K个元素,使用最大堆。
查找最小的K个元素,使用最大堆,具体代码如下:[cpp] view plaincopy#define _CRT_SECURE_NO_WARNINGS #include using namespace std; void swap(int *a, int *b) { int temp;
2015-01-08 23:16:21 574
转载 输入一个单向链表,输出该链表中倒数第K个结点
输入一个单向链表,输出该链表中倒数第K个结点,具体实现如下:[cpp] view plaincopy#include using namespace std; struct LinkNode { public: LinkNode(int value = 0) : nValue(value){ pNext
2015-01-08 23:15:33 793
转载 输入一颗二元树,从上向下按层打印树的每个节点,同一层中,按照从左到右的顺序打印。
输入一颗二元树,从上往下按层打印树的每个结点,同一层中按照从左往右的顺序打印,具体实现如下:[cpp] view plaincopy#include using namespace std; typedef struct BSTNode { int nValue; struct BSTNode
2015-01-08 23:14:25 564
转载 在一个字符串中找到第一个只出现一次的字符
题目:在一个字符串中找到第一个只出现一次的字符,如输入abaccdeff,则输出b;具体实现如下:[cpp] view plaincopy#include #include using namespace std; void FindChar(const string &strBuf) { int n
2015-01-08 23:13:59 383
转载 随机生成3个数,创建3个指针指向这3个数,不改变这3个数,从大到小显示。
题目:随机生成3个数,创建3个指针指向这3个数,不改变这3个数,从大到小显示,具体实现如下:[cpp] view plaincopy#include #include #include void main() { int a = 0; int b = 0; int c = 0;
2015-01-08 23:13:04 461
转载 生成一个一维数组,有10个元素,都用随机数填充,用指针轮询的办法实现函数查找一个数是否存在。
题目:生成一个一维数组,有10个元素,都用随机数填充,用指针轮询的办法实现函数查找一个数是否存在,具体实现代码如下:[cpp] view plaincopy#include #include #include int find(int * pInput, int nLen, int nKey, int * pOut)
2015-01-08 23:11:51 1744
转载 开辟一个二维数组,有10*8个元素,用随机数填充,按照下面的方法用函数实现查找一个数是否存在
题目:开辟一个二维数组,有10*8个元素,用随机数填充,按照下面的方法用函数实现查找一个数是否存在。具体实现如下:[cpp] view plaincopy#include #include #include int find(int * pInput, int nLen, int nKey, int * pOu
2015-01-08 23:11:16 633
转载 有两个指针pa,pb分别指向有两个数,a,b,请写一个函数交换两个指针的指向,也就是让pa指向b,让pb指向a
题目:有两个指针pa,pb分别指向有两个数,a,b,请写一个函数交换两个指针的指向,也就是让pa指向b,让pb指向a,具体实现如下:[cpp] view plaincopy#include #include int swap_ptr(int ** pA, int ** pB) { if (pA == N
2015-01-08 23:10:57 1860
转载 实现一个计算器
题目:实现一个计算器,创建两个变量a,b,以及操作字符,实现输入“+”,执行加法,‘-’,执行减法,以此类推,有一个综合函数处理输入,有加减乘除求余5种运算,请用函数指针实现,以及函数指针作为参数来实现,具体实现如下:[cpp] view plaincopy#include #include typedef int(*Fu
2015-01-08 23:10:18 401
转载 随机生成1024个数,存入一段内存,用指针实现获取1024个数的最大数地址,最小数地址
题目:随机生成1024个数,存入一段内存,用指针实现获取1024个数的最大数地址,最小数地址,具体实现如下:[cpp] view plaincopy#include #include #include int FindMaxMinByIndex(int * pInput, int nLen, int ** ppMax, in
2015-01-08 23:09:31 645
转载 随机生成1024个数,用指针进行排序,并实现二分查找
题目:随机生成1024个数,用指针进行排序,并实现二分查找,具体实现如下:[cpp] view plaincopy#include #include int SortByPtr(int * pInput, int nLen) { if (!pInput) { retu
2015-01-08 23:08:09 558
转载 创建一个三维数组
题目:创建一个三维数组,4*4*4个元素,数字随机生成,找出每行最大的数,每面最大的数,以及整个数组中最大的数的地址,具体实现如下:[cpp] view plaincopy#include #include #include void PrintMaxValByIndex(int(*pData)[4][4], int
2015-01-08 23:07:21 1253
转载 C++_友元函数
1、为什么要引入友元函数:在实现类之间数据共享时,减少系统开销,提高效率 具体来说:为了使其他类的成员函数直接访问该类的私有变量 即:允许外面的类或函数去访问类的私有变量和保护变量,从而使两个类共享同一函数 优点:能够提高效率,表达简单、清晰 缺点:友元函数破环了封装机制,尽量不使用成员函数,除非不得已的情况下才使用友元函数。
2015-01-03 00:34:48 393
VC++实现通过adb检测android设备是否连接到usb
2016-09-19
关于MFC入门教程
2013-08-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人