C++
void_ink
孤舟蓑笠翁 独钓寒江雪
展开
-
学习STL第一天:STL简介
〇:为什么学STL有位老师说c++ 就是 c语言 + 类(面向对象编程) + 模板(泛型编程),而STL就是模板的一个例子。因此,我学完了c++基础后,开始学习STL。 一:STL:standard template library(标准模板库)指的是把一些常用的数据结构,算法,等等封装起来给大家使用的东西。二:组成部分:STL可分为容器(containers)、迭代...转载 2018-07-19 15:47:20 · 223 阅读 · 1 评论 -
排序算法总结(排序可视化-控制台版)
学完排序,于是写了一个排序过程可视化的控制台程序。运行环境:win10编译器 :vs2017编程语言:C++上图:代码:#include<iostream>#include<iomanip>#include<windows.h>#include<vector> using name...原创 2019-03-23 18:44:56 · 1596 阅读 · 1 评论 -
C++11新特性(2)
ONE for循环的新写法 新写法格式:for( decl : coll ){ statement} 这种写法中,for循环的条件分为两部分,decl作为循环元素,coll是一个容器。每次for循环都会取coll里面的一个元素放到decl里面,再执行循环体。 具体操作可以类比旧格式,形如:for(auto _pos=col...原创 2019-04-03 22:30:16 · 224 阅读 · 0 评论 -
算法基础
ONE 有朋友问起算法的时间复杂度和空间复杂度的定义和计算方式,于是决定总结一下,一方面可以给大家看,另一方面也算是自我巩固。 内容参考自《数据结构和算法》,百度百科 等。TWO 算法的基本概念 算法是对特定问题求解步骤的一种描述,它是指令的有限序列,其中每一条指令表示一个或多个操作。 一个算法还具有下列5 个重要特性:有...原创 2019-03-22 23:00:07 · 311 阅读 · 0 评论 -
各种排序算法(二)
ONE 选择排序简单选择排序 顾名思义,简单选择排序就是每一趟(如第i趟)从待排序列选取最小的一个元素放到第 i 个位置,直到第n-1趟做完。//简单选择排序void SelectSort(vector<int> &buf){ int n = buf.size(); for (int i = 0; i < n - 1; i++) { ...原创 2019-03-18 22:58:22 · 180 阅读 · 0 评论 -
各种排序算法
ONE 基本概念洛谷刷题,写到排序,于是把排序复习了一遍。排序算法预览:https://www.edrawsoft.cn/viewer/public/s/371d2752967218排序算法的稳定性: 如果待排序表中有两个元素Ri,Rj,其对应关键字keyi=keyj,且在排序前Ri在Rj前面,如果使用某一排序算法排序后,Ri仍然在Rj的前面,则称这个排序算法是稳定的...原创 2019-03-17 23:02:12 · 324 阅读 · 0 评论 -
C++11 新特性 ( 1 )
今天先学习c++11新特性ONEVariadic Templates(数量不定的模板参数)1 》 ... 就是pack(包)2 》用于template parameters 就是template parameters pack(模板参数包)3 》用于function parameters types 就是function parameters types pack(函数参数类型包)...原创 2019-03-12 22:47:37 · 286 阅读 · 0 评论 -
学习STL第三天 vector
没有太多注意事项:1》》注意vector是数组,如果频繁插入,效率很低。2》》学到一个有用的函数:random_shuffle()随机乱序#include<iostream>#include<vector>#include<algorithm>#include<functional>#include<ctime>u...原创 2018-07-27 00:11:58 · 260 阅读 · 0 评论 -
STL第四天 list
今天学习了STL的list,有几个需要注意的事项:1》》list有remove函数,支持删除指定数据,但是涉及到==运算符,如果是基本数据类型就可以不管,但如果是自定义类型,就需要手动重载==运算符。2》》list有自己的sort函数,可以不用函数库的sort函数,而直接调用list自己sort函数,但是sort函数设计到<运算符,如果是自定义类型,需要手动重载<运算符。3...原创 2018-07-28 21:37:54 · 165 阅读 · 0 评论 -
STL第二天 string
今天学习STL的第二天 学习了string的相关操作 以下是代码描述:有几点需要特别注意:1》》string内部也是用的char数组来存储string对象的值,并且可以赋值"\0",这就导致,如果使用string的过程中对该对象的末尾或者某一段加入了"\0"字符,会提前截断字符串,产生不可预料的后果,在编程过程中一定要注意。2》》迭代器的使用。在使用迭代器期间,注意不能改变原对象的占用...原创 2018-07-25 17:13:06 · 167 阅读 · 0 评论 -
C++11新特性(3)
最近一直在忙毕设,我毕设是用Qt做的一个小游戏,当初做的时候忘了写博客,现在快做完了,想写,却又不知道从何写起了。等过段时间毕设答辩结束我再挑出来一些写几篇博客。今天继续学习C++11新特性。Alias Template(模板别名)使用方式:template<typename T> //自定义的分配器class MyAlloc{ ...};temp...原创 2019-04-30 21:53:16 · 329 阅读 · 0 评论