随笔分类 - 随笔
一些小知识,以后整理
摘要:#include #include #include #include #include using namespace std; struct TreeNode{ int data; TreeNode* lchild, *rchild; int freq, height; }; class AVLTree{ public: TreeNode *he...
阅读全文
摘要:struct ThreadNode{ int data; ThreadNode *lchild, *rchild; int ltag, rtag; }; void InThread(ThreadNode *p, ThreadNode *pre){ if(p != NULL){ InThread(p->lchild, pre); i...
阅读全文
摘要:#include #include using namespace std; #define MAX 1000000 struct Node{ int data; Node* next; }; void output(Node* head){ if(!head->next && !head->data) return; output(head->next);...
阅读全文
摘要:时间复杂度: 冒泡、选择、插入排序:O(n2) 快速、归并、堆排序:O(nlog2n) 希尔排序:O(n1+ξ) 0<ξ<1
阅读全文
摘要:#include using namespace std; void Cocktail(int *arr, int size){ int tail = size - 1; for(int i = 0; i i; j--){ if(arr[j] arr[j+1]){ int temp = arr[j]; ...
阅读全文
摘要:在类声明的内部声明或定义的成员函数叫做内联函数。 (1)显式声明: (2)隐式声明: 在内联函数中不允许使用循环语句和开关语句,内联函数的定义必须出现在内联函数第一次被调用之前。递归函数不能被用来做内联函数。
阅读全文
摘要:VA_LIST的用法:(1)首先在函数里定义一具VA_LIST型的变量,这个变量是指向参数的指针; (2)然后用VA_START宏初始化变量刚定义的VA_LIST变量,使其指向第一个可变参数的地址; (3)然后用VA_ARG返回可变的参数,VA_ARG的第二个参数是你要返回的参数的类型(如果函数有多
阅读全文
摘要:静态成员是类的所有对象共享的成员,不是某个对象的成员,它在类加载的时候就存在于内存中 静态成员可以独立访问,不需要创建类实例,类的静态函数只能调用静态成员,因为静态函数不包含this指针。 静态数据成员也会被派生类共享。
阅读全文
摘要:private: 只能由该类中的函数、其友元函数访问,不能被任何其他访问,该类的对象也不能访问. protected: 可以被该类中的函数、子类的函数、以及其友元函数访问,但不能被该类的对象访问 public: 可以被该类中的函数、子类的函数、其友元函数访问,也可以由该类的对象访问注:友元函数包括两
阅读全文
摘要:(int)a实际上是以浮点数为参数构造了一个整型数,值为1,(int&)a告诉编译器将a当作整数看,因为1以整数形式存放与以浮点形式存放,内存数据不一样,故两者不等。1065353216(16进制为0x0000803F)表示在浮点数形式中占据的内存单元中的值,而使用int&则是告诉上下文,不管原来是
阅读全文
摘要:结果并不是0,因为在默认构造函数内部再调用带参数的构造函数是用户行为而非编译器行为,只执行函数调用,不会执行初始表达式。
阅读全文
摘要://B公有继承自A,可以是间接继承 class B:public A{} //B实现了隐式转化为A的转化操作 class B{operator A();} //A实现了non-explicit的参数为B class A{A(const B&);} //赋值操作 A& operator=(const B&);
阅读全文
摘要:这段代码有错,str指针始终为空,因为GetMemory改变的是参数的值,而非指针指向的空间里的值,而改变形参的值并不会传回。 修改方法:
阅读全文
摘要:常见的几种机器的存储方式: Linux: 小端 NT: 小端 Alpha: 小端 Sun: 大端
阅读全文
摘要:class A{ public: A(){ p = this }; ~A{ if( p != NULL){ delete p; p = NULL }; } A *p; } 由于A类中有一个指针A *p;而构造函数中有p = this;也就是说整个指针指向了对象本身。这个会导致无限构造。所以不要构造本
阅读全文
摘要://方法一 i = i + j; j = i - j; i = i - j; //方法二 i ^= j; j ^= i; i ^= j; //方法三 a = a + b - (b = a)
阅读全文
摘要:对于结构体X中表示s1占用字节的0-1,s2占用字节的2-4,s3占用字节的5-7位
阅读全文
摘要:注意:在函数返回值前加const的目的是为了使其返回值不为左值。比如假设a*b=c是合法的,但无意义,我们需要杜绝这种情况,于是我们可以将*操作符重载为返回值加const的函数。
阅读全文
摘要:/* * main.cpp * * Created on: 2016年8月29日 * Author: godsome */ #include #include #include using namespace std; int next[100]; int Index_KMP(char s[], char t[]){ ...
阅读全文
摘要:const int MINNUMBER = -32767; int find_sec_max(int data[], int count){ int maxnumber = data[0]; int sec_max = MINNUMBER; for (int i = 1; i maxnumber){ sec_max = maxnumber; ...
阅读全文

浙公网安备 33010602011771号