自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(4)
  • 收藏
  • 关注

原创 C++ STL 容器vector添加元素函数emplace_back()和push_back()的使用差异及比较

1、vector容器的特点vector底层数据结构是一个动态数组,就是在实例化一个vector对象时,如果不手动对其容量进行设置的话,vector的默认容量为0,即capacity()返回值为0。随着向容器中添加元素,容器对象按照1 2 4 8 16 32 二倍扩容。GCC是按照二倍扩容,VS13是1.5倍扩容。扩容后是一段新的内存空间,此时就需要将旧的内存空间里的所有元素拷贝到新的内存空间中去(如果元素为一个类的对象的话,此时会触发拷贝构造函数),然后再在新的内存空间中的原数据元素后面继续插入新的元

2021-07-02 16:44:03 629

原创 二维STL容器如何进行初始化

二维STL容器如何进行初始化@TOC二维STL容器如何进行初始化1、第一种直接申明vector<vector<char> >vec(row, vector<char>(col, '#'));其中row 和col分别表示二维vector的两个轴向的大小。2、首先初始化行向的大小、在初始化列向的大小。vector<vector<char> >vec1;vec1.resize(row);for(int i=0;i<vec1.si

2021-07-01 18:53:18 300

原创 C++动态规划求解砝码称重问题(双向的,包括减法情况)

1、定义 先来读一读题目,题目如下:**现有一组砝码,重量互不相等,分别为m1、m2……mn;他们可取的最大数量分别为x1、x2……xn。现在要用这些砝码去称物体的重量,问能称出多少种不同的重量。看完这个题目感觉似乎无从下手,难道要一个个的枚举拼凑吗?答案是否定的。不绕弯子了,下面直接进入动态规划的主场。设想第0种情况,假如现在只有0个砝码,问它能称出的重量有几种?是个人都知道只能称0的重量,并且只有这么1种情况。设想第1种情况,现在只有1种规格的砝码,它的重量是1,数量是1个,问它能称出的重量

2021-04-19 21:21:15 930 1

原创 C++中用new给二维数组分配内存的使用方法

C++中用new给二维数组分配内存的使用方法一、原理首先要分开分配内存,如果还是用原来的一维数组的动态分配就不行了,比如 int** ptr = new int* [10 * 10]; /这句是指分配了100个int指针,并不是一1010的2维数组。*/二、使用步骤1.先创建一个10个int型指针数组int **ptr = new int *[10]; //指针的数组2.在分别给每个指针的头指针分配内存for(int i=0;i<10;i++){ ptr[i]=new int[

2021-04-14 16:36:58 1560

空空如也

空空如也

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

TA关注的人

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