自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

白白的博客

学习笔记

  • 博客(23)
  • 问答 (4)
  • 收藏
  • 关注

原创 常用算法(学习笔记)

1.遍历算法(for_each,transform)#include <iostream>#include <vector>#include <algorithm>using namespace std;//普通函数void print01_for_each(int val){ cout << val << " ";}//仿函数class print02_for_each{public: void operator.

2021-07-29 17:07:43 188

原创 内建函数对象(学习笔记)

概念:STL内建了一些函数对象分类:算数仿函数关系仿函数逻辑仿函数用法:这些仿函数所产生的对象,用法和一般函数完全相同使用内建函数对象,需要引入头文件#include<functional>算数仿函数功能:实现四则运算其中 negate是一元运算,其他都是二元运算仿函数原型:template<class T> T plus<T>//加法template<class T> T minus<T>//减法templa

2021-07-27 16:13:59 126

原创 谓词(学习笔记)

概念:返回bool类型的仿函数称为谓词如果operator()接受一个参数,那么叫做一元谓词如果operator()接受两个参数,那么叫做二元谓词#include<iostream>using namespace std;#include<vector>#include<algorithm>//一元谓词class CreatFive{public: bool operator()(int val) { retur...

2021-07-27 11:48:30 191

原创 函数对象(仿函数)(学习笔记)

概念:查找函数调用操作符的类,去哦对象常称为函数对象函数对象使用重载的()时,行为类似于函数调用,也叫仿函数本质:函数对象(仿函数)是一个类,不是个函数函数对象使用的特点:函数对象在使用时,可以像普通函数一样调用,可以有参数,可以有返回值函数对象超出普通函数的概念,函数对象可以有自己的状态函数对象可以作为参数传递...

2021-07-26 17:28:30 89

原创 STL-员工分组(学习笔记)

#include<iostream>using namespace std;#include<vector>#include<string>#include<map>#include<ctime>#define 策划 0#define 美术 1#define 研发 2//创建员工类class Worker{public: string m_name;//姓名 int m_salary;//工资};void Crea.

2021-07-26 13:05:51 140

原创 map/multimap(学习笔记)

1.基本概念简介:map中所有元素都是pair pair中的第一个元素为key(键值),起到索引作用,第二个元素为value(实值) 所有元素都会根据键值自动排序本质:map/mapmultimap属于关联式容器,底层结构是二叉树实现优点:可以根据key值快速找到value值map/mapmultimap区别:map不允许容器有重复的key值元素(但value值可以相同) mulyimap允许容器有重复的key值元素2.构造函数#include<iostream&

2021-07-26 13:05:07 147

原创 set/multiser容器(学习笔记)

1.基本概念:所有元素的会在插入时自动被排序set/multiste属于关联式容器,底层是用二叉树实现区别:set不允许容器中有重复的元素,mulitset允许有重复的元素2.set的构造与赋值:构造:set<T>st;set(const set &st);赋值:set& operator=(const set &st);3.大小与交换功能:统计set容器大小以及交换set容器函数原型:size();empty();swap(st

2021-07-23 17:19:40 125

原创 list容器(学习笔记)

1.基本概念功能:将数据进行链式存储链表的组成:有一系列的结点组成结点的组成:一个存储元素的数据域,另一个存储下一个结0点地址的指针域,最后一个指针域指向空NULLSTL中的链表是一个双向循环链表(后一个结点的指针域既指向下一个结点还指向上一个结点,第一个结点的指针域指向NULL;循环指的是最后一个结点指向第一个结点。由于list的存储方式不是连续的内存空间,因此链表list的迭代器只支持前移和后移,属于双向迭代器list的优点:采用动态存储分配,不会造成内存浪费和溢出;链表执

2021-07-22 20:20:14 146

原创 queue容器(学习笔记)

1.基本概念:queue是一种先进先出的数据结构他有两个出口;队里容器只允许从一端新增元素,从另一端移除元素;队列中只有对头和对位可以被外界使用,因此队列中不允许有遍历的行为。2.queue常用接口构造函数:queue<T>que;//queue采用模板类实现,queue对象的默认构造形式queue(const queue&que)'//拷贝构造函数赋值操作:queue &operator=(const queue&que);//重载等号操作符数

2021-07-21 11:50:03 237

原创 stack容器(学习笔记)

1.基本概念stack是一种先进后出的数据结构,它只有一个出口就是只有栈顶的元素可以被外界使用,因此栈不能被遍历。(push入栈 pop出栈)栈可以通过(empty)判断是否为空栈可以通过(size)统计元素个数2.栈的常用接口功能:栈容器常用的对外接口 构造函数:stack <T>stk;//stack采用模板类实现stack对象的默认构造形式stack(const stack &stk);//拷贝构造函数赋值操作:stack& operato=

2021-07-21 11:16:52 116

原创 STL容器-案例(学习笔记)

#include<iostream>using namespace std;#include<string>#include<vector>#include<deque>#include<algorithm>#include<ctime>//选手类class Person{public: Person(string name, int score) { m_name = name; m_score = .

2021-07-15 19:10:31 165

原创 vector容器(学习笔记)

1.构造函数功能:vector数据结构和数组非常相似,也称为单端数组 区别:数组是静态空间,vector可以动态扩展 动态扩展:并不是在原空间后续接新空间,而是找一个更大的内存空间,然后将原数据拷贝到新空间,再释放原空间。vector容器的迭代器是支持随机访问的迭代器 vector构造函数:功能:创建一个vector容器函数原型:vector<T> v;//采取模板实现类实现,默认构造函数vector<v.begin().v.end());//将[v.begin().

2021-07-11 23:59:29 130

原创 string容器:子串(学习笔记)

函数原型:string substr(int pos=0;int n=npos)#include<iostream>using namespace std;#include<string>void test01(){ string str1 = "hello"; string sub=str1.substr(1, 3);//ell cout << sub << endl;}void test02(){ //实用案例 strin

2021-07-08 22:31:54 142

原创 string容器:插入和删除(学习笔记)

函数原型:string&insert(int pos,const char*s);//插入字符串string&insert(int pos,const string&str);//插入字符串string&insert(int pos,int n;char c);//在指定位置插入n个字符string&erase(int pos,int n=pos);//删除从pos开始的n个字符#include<iostream>using na

2021-07-08 22:19:16 255

原创 string容器:字符存取(学习笔记)

函数原型:char& operator[](int n);//通过[]的方式取字符char& at(int n);//通过at的方式取字符#include<iostream>using namespace std;#include<string>void test01(){string str1 = "hello";//size() 计算字符串的长度for (int i = 0; i ...

2021-07-08 22:10:15 92

原创 string容器:字符串比较(学习笔记)

//string字符串的比较:通常比较是否相等//1、通过比较ASCLL码值的大小//2、等于 返回0大于 返回 1 小于返回 -1#include<iostream>using namespace std;#include<string>void test01(){ string str1 = "hello";string str2 = "allo";if (str1.co...

2021-07-08 21:56:20 171

原创 string容器:查找和替换(学习笔记)

函数原型: int find(const string & str, int pos = 0)const;//查找str第一次出现的位置,从pos开始查找 int find(const char*s, int pos = 0)const;//查找s第一次出现的位置,从pos开始查找 int find(const char* s, int pos,int n)const;//从pos位置查找s的前n个字符第一次出现的位置 int find(const char c,

2021-07-06 22:13:30 207

原创 string容器:字符串拼接(学习笔记)

函数原型: string& operator+=(const char*s); string& operator+=(const char c); string& operator+=(const string&str); string& append(const char*s); string& append(const char*s,int n); string& append(const s

2021-07-06 21:30:17 159

原创 string容器:赋值操作(学习笔记)

赋值的函数原型: string& operator=(const char*s);//char*类型字符串 赋值给当前的字符串 string& operator=(const string&s);//把字符串s赋值给当前字符串 string& operator=(char c);//把字符赋值给当前字符串 string& assign(const char*s);//把字符串s赋值给当前字符串 string& as

2021-07-06 21:29:18 225

原创 string容器:构造函数(学习笔记)

特点:例如类内封装了许多成员方法:finf copy delete...string管理char*所分配的内存,不用担心复制越界和取值越界等,由类内部负责string的构造函数: string(const char*s); //使用字符串s初始化#include<iostream>using namespace std;#include<string>void test01(){string...

2021-07-06 21:28:09 120

原创 初识容器嵌套容器(学习笔记)

#include<iostream>using namespace std;#include<vector>#include<algorithm>void test01(){ vector<vector<int>>v; //创建小容器 vector<int>v1; vector<int>v2; vector<int>v3; vector<int>v4; //向小容器中添加.

2021-07-04 20:39:25 314

原创 初识vector容器(学习笔记)

#include<iostream>using namespace std;#include<algorithm>//算法的头文件#include<vector>//vector容器存放内置数据类型--类似于数组//容器在使用时都要包含头文件void test01(){ //创建一个vector容器,数组 vector<int> v; //向容器中插入数据 v.push_back(10); v.pu...

2021-07-04 20:08:16 84

原创 STL初识(学习笔记)

C++面向对象的三大特性:封装,继承,多态 STL分为:容器,算法,迭代器--将容器和算法之间无缝连接 几乎所有代码都是模板类或模板函数 STL大体分为六大组件:容器,算法,迭代器,仿函数,适配器,空间配置器 容器(存放数据):运营广泛的一些数据结构实现出来,常见的数据结构:数组,链表,数,栈,队列,几何,映射表 等,容器分为序列式容器:强调值的顺序,序列式容器的每个元素都有固定的位置。关联式容器:二叉树结构,各元素之间没有严格的物理顺序。 算法(解决问题..

2021-07-02 12:23:44 66

空空如也

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

TA关注的人

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