自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

圆耳朵

学习笔记

  • 博客(10)
  • 收藏
  • 关注

原创 知识梳理:标准模板库STL

基本概念容器:可容纳各种数据类型的通用数据结构,是类模板。迭代器:可用于依次存取容器中的元素,类似于指针算法:用来操作容器中的元素的函数模板sort()来对一个vector中的数据进行排序find()来搜索一个list中的对象算法本身与它们操作的数据的类型无关,因此它们可以在从简单数组到高度复杂容器的任何数据结构上使用。容器概述可以用于存放各种类型的数据(基本类型的变量、对象等)的数据结构,都是类模板,分为三种:顺序容器:vector\deque\list关联容器:set\mu

2020-07-27 22:52:34 188

原创 知识梳理:string类

string类string类是模板类:typedef basic_string<char> string;使用string类要包含头文件<string>string对象的初始化: string s1("hello"); string month="month"; string s2(8,' x');错误的初始化方法string e1='c';//error,不能直接用字符去初始化string e2('u');//errorstring e3=22;//error

2020-07-27 15:52:11 101

原创 知识梳理:输入输出和模板

输入输出相关的类istream用于输入的流类,cin就是该类的对象ostream用于输出的流类,cout就是该类的对象ifstream是用于从文件中读取数据的类ostream是用于向文件中写入数据的类fstream是既能从文件中读取数据又能向文件写入数据的类标准流对象输入流对象: cin 与标准输入设备相连输出流对象: cout 与标准输出设备相连 cerr 与标准错误输出设备相连 clog 与标准错误输出设备相连缺省情况下 cerr<<"hel

2020-07-27 15:01:20 290

原创 知识梳理:虚函数和多态

虚函数在类的中前面增加virtual关键字的成员函数就是虚函数。class base{ virtual int get();//虚函数声明};int base::get(){}//虚函数定义virtual关键字只用于在类定义中的函数声明,写函数体时不用。构造函数和静态成员函数不能是虚函数。虚函数可以参与多态,普通函数不能。多态表现形式1派生类的指针可以赋值给基类指针。通过基类指针调用基类和派生类中的同名虚函数时,若该指针指向一个基类的对象,那么被调用的是基类的虚函数,若该指针指向一个

2020-07-25 16:02:51 195

原创 知识梳理:继承和派生

基本概念继承在定义一个新的类B的时候,如果该类与某个已有的类A相似,指的是B拥有A的全部特点,那么就可以把A作为一个基类,而把B作为基类的派生类,也称子类。派生派生类是通过对基类进行修改或扩充而得到的。在派生类中可以扩充新的成员变量和成员函数。派生类已经定义后可以独立使用,不依赖基类。派生类拥有基类的全部成员函数和变量,不论是private、protected\public。在派生类的各个函数中,不能访问基类中的private成员。派生类的体积等于基类的体积再加上派生类对象自己的成员变量的体积。

2020-07-25 14:53:07 170

原创 知识梳理:运算符重载

基本概念运算符重载的需求C++预定义的运算符只能用于基本数据类型的运算:整型、实数型、字符型、逻辑性。数学上,两个复数可以直接进行加减运算,但是C++中用于复数是不被允许的。如何让对象也能通过运算符进行运算,使得代码更加简介易于理解。运算符重载就是对已有的运算符赋予多重的含义,使得统一运算符作用于不同类型的数据时导致不同类型的行为。同一个运算符对不同类型的操作数所发生的行为不同。运算符重载的形式运算符重载的实质是函数重载,可以重载为普通函数,也可以重载为成员函数。把含运算符发表达式转换成对运算符函

2020-07-24 20:16:10 597

原创 知识梳理:类和对象

类和对象基本概念从客观事物中抽象出类:成员变量和成员函数统称为类的成员,类就像是带函数的结构。class CReactangle{//定义一个矩形的类public: int w,h;//成员变量:矩形的宽和高 int Area(){return w*h;}//成员函数,计算矩形的面积 void Init(int w1,int h1){//成员函数,初始化矩形的高和宽 w=w1; h=h1; }}int main(){ int w,h; CReactangle r;//定义

2020-07-22 22:29:34 129

原创 知识梳理:从C到C++

C++常量常量是固定值,是特殊的变量,值在定义后不能进行修改。常量类型有:整型数字、浮点数字、字符、字符串、布尔值等。整型常量可以是十进制、十六进制、八进制的常量,可以根据前缀判断:0x或OX表示十六进制,0表示八进制,不带前缀表示十进制。整型常量可以带一个后缀,U(unsigned)表示无符号整数,L(long)表示长整型,大小写均可。如88 //十进制0123 //八进制0x5b //十六进制30 //整数30l //长整数30u //无符号整数30ul //无

2020-07-21 10:28:05 143

原创 知识梳理:Splay树(伸展树)

Splay Tree(伸展树)基本原理Splays Trees 也是一种二叉搜索树,用于提高连续搜索的效率。Splay Trees 通过将被访问到的节点放于根,提升访问速度。它与AVL Trees的效果有所区别。AVL树通过使树balanced降低树的高度至logN,从而使得单次搜索的复杂度为O(logN)。而Splay Trees则通过每次将被访问到的节点置于根,使得m次连续搜索的复杂度...

2020-05-12 18:30:10 1681

原创 知识梳理:AVL树

AVL树 知识梳理基本原理虽然二叉搜索树时间复杂度=O(height),但是树高在最坏情况下可以为O(N),为解决动态查找问题,定义平衡二叉搜索树,需满足:是二叉搜索树平衡:定义balance factor: BF(node)=hL-hR,左右子树高度差小于等于1,所以BF取值仅为1,-1或0;平衡的维持定义trouble maker和trouble finder左单旋:tro...

2020-05-12 18:29:54 202

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除