- 博客(14)
- 收藏
- 关注
原创 二叉树之中序遍历(递归和非递归两种遍历)
二叉树是每个节点最多有两个子节点的有序树。二叉树常被用作二叉查找树和二叉堆或是二叉排序树。二叉树的第i层至多有2^(i -1)个节点;深度为k的二叉树至多有2^k - 1个节点;对任何一颗二叉树,若其终端节点数为n0,度为2的节点数为n2,则 n0 = n2 + 1;----------------------------------------------------------
2016-08-16 20:15:00 686
原创 二叉树之层序遍历
二叉树是每个节点最多有两个子节点的有序树。二叉树常被用作二叉查找树和二叉堆或是二叉排序树。二叉树的第i层至多有2^(i -1)个节点;深度为k的二叉树至多有2^k - 1个节点;对任何一颗二叉树,若其终端节点数为n0,度为2的节点数为n2,则 n0 = n2 + 1;----------------------------------------------------------
2016-08-16 19:19:54 657
原创 位操作输出二进制数1的个数
位操作按位与&的使用:代码如下:#include#includeusing namespace std;int func(int x){bitset b(x);cout int countx = 0;while (x) // 只要数不为0就执行循环体{countx++; // 即有一个 1 所
2016-06-05 21:54:20 708
原创 IO流的条件状态
标准库定义了这么些IO类型,分别在三个头文件中。*************************************************************************************************************iostate是标准库定义的与机器无关的类型,表示条件状态。标准库的定义:enum _Iostate{
2016-04-17 20:05:27 1070
原创 字符的一些操作 和 与之对应的宽字符的一些操作
char对应的宽字符版本是wchar_t , 而wchar_t 的定义是 #define unsigned short wchar-t。strlen是返回char*的长度,不包括‘\0'。而wcslen是strlen的宽字符版本,返回的是 wchar_t * 的长度, 不包括'\0'。还有一种TCHAR类型, 如果没有定义Unicode字符,那么TCHAR就表示 char; 相反
2016-04-13 15:31:37 476
原创 const成员 和 static成员
1.const成员变量2.const成员函数3.static成员变量4.static成员函数*******************纯手敲,给自己加深印象**************************1.const成员变量:必须在构造函数初始值列表进行初始化,(或者申明const成员变量为static,可在类内初始化)class Account{public
2016-04-11 22:38:15 552
原创 explicit显式构造函数
1.接受一个单参数const char*的string构造函数不是explicit的;2.接受一个容量参数的vector构造函数是explicit的。*********************************************************************************************explicit是什么意思?它是用来修饰只有一个
2016-04-11 16:45:17 923
原创 拷贝构造函数之深拷贝浅拷贝
何为拷贝构造函数?一般一个构造函数的参数是自身类类型的const引用,则这个构造函数就是拷贝构造函数。拷贝构造函数是被用来初始化 非引用类 类型参数, 参数必须是引用类型。如:class MyString{ public: MyString( const MyString& Mystr); //拷贝
2016-04-06 20:19:22 536
原创 位运算与scanf
参加过程序设计之类的比赛的对这样的写法肯定不陌生:while(~scanf("%d",&a)) 或者while(scanf("%d", &a) != EOF)1.先来聊聊这个运算符 ~ :取反 位运算符,即按位求反。之前有个同学问我8的求反运算(~8)是多少,我竟然一口回答:7。罪过罪过,典型的计算机组成原理没学好,涉及到补码那些东西。今天,我就再来回顾回顾一下:例1:~
2016-03-27 13:53:20 437
原创 底层const
还记得大一刚学指针,引用这些的时候加上const被搞得有点头晕,总是当时记得,过段时间就忘了,断断续续,没理解透,,,今天整理了一下,把自己的理解俸上。
2016-03-26 14:08:26 861
原创 char* 和char[]的区别
之前在用到char*和char[],用到srtncat,让char[]对char*进行添加时运行会崩溃,之后做了一些分析和练习,对char*和char[]有了更深的理解。下面附上一些测试数据。
2016-03-25 11:58:38 752
原创 两个变量如何交换值
对于这个小问题,刚开始学编程的时候都知道用第三个变量来交换这两个变量的值。 但是如果不用第三个变量如何去处理? 到后来学了函数学了指针可以通过函数调用指针;知道标准模板库,添加头文件#include简简单单的调用STL中的swap函数就可以了。 但是还可以通过其他的小方法解决,有些趣味。 1.通过位运算 因为 1
2015-11-03 13:01:44 450
原创 枚举类型的初始化
1.如果是在函数外面定义一个枚举类型的变量,那么这个枚举变量就会自动初始化为0。枚举类型其实也应该算是内置类型,她就是一个整型类型。其实这块:全局变量和静态类型变量没有初始化的话也会自动初始化为0或空字符。enum x{x1 = 3,x2,x3,} ;x X;int main(){ cout getchar(); return
2015-11-03 12:41:05 13114 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人