C++
lady_killer9
CKA、CKS证书持有者,安全工程师
展开
-
最小生成树-Kruskal算法详解(含全部代码)
目录适用条件测试所用图算法步骤Kruskal算法代码全部代码实验结果与Prim算法对比适用条件加权连通图(可以判定图是否连通)测试所用图与最小生成树-Prim算法详解(含全部代码)所用图相同,就是课本上的。算法步骤1.对边按权重排序为e1、e2、...2.若已选择V-1条边,停止。否则,按边的权重排序选择下一条边。3.判断选择的边...原创 2019-11-10 18:20:12 · 12419 阅读 · 3 评论 -
C++ STL之deque(双端队列)的使用
双端队列(deque),顾名思义,两端都可以操作,插入和删除。而且,还可以在中间进行操作。内部采用线性表顺序结构,与vector不同的是,deque采用分块的线性存储结构存储数据,每块大小512字节。所有的deque块使用一个Map块进行管理,每个Map数据项纪录各个deque块的首地址。当考虑容器内部的内存分配策略和操作性能时,deque相对于vector更有优势,同时,也可以...原创 2018-02-07 20:06:27 · 1993 阅读 · 0 评论 -
C++ STL之list的简单使用
list是双向链表,有vector,deque的特征,而且效率高。它有插入(前插,后插,中间插),删除(前删,后删,清空等),排序等功能。而且,可以剔除连续相同元素,保留一个。接下来,用一个程序将它的功能串起来,文章末尾有vector等的链接。代码:/*listAuthor:YuBoDate:2018/2/5*///注意与vector deque的相同点与不同点...原创 2018-02-07 20:36:49 · 1481 阅读 · 0 评论 -
C++ STL汇总之区别与联系
C++的STL中提供了很多的容器,有vector,set,multiset,map,multimap等等。学习了一段时间,进行汇总,强化区别与联系。见下方表格: C++ vector的简单使用https://blog.csdn.net/lady_killer9/article/details/79237116 C++ STL之string的简单使用http://...原创 2018-02-08 11:44:17 · 936 阅读 · 0 评论 -
STL-list错误:list iterator not incrementable
使用STL的list容器时报错,具体内容如下:错误图:分析:迭代没法再自增了。代码部分:在遍历时用了erase函数,会把迭代器弄乱。无法继续进行,因此,删除完后加上break,别让它继续查找即可。有问题请下方评论,转载请注明出处,并附有原文链接,谢谢!如有侵权,请及时联系。...原创 2018-05-11 14:53:51 · 1007 阅读 · 0 评论 -
操作系统-使用信号量实现生产者与消费者(C++实现)
常用函数:HANDLE WINAPI CreateSemaphore( _In_opt_ LPSECURITY_ATTRIBUTES lpSemaphoreAttributes _In_ LONG lInitialCount, _In_ LONG lMaximumCount, _In_opt_ LPCTSTR lpName...原创 2018-07-08 10:49:43 · 5218 阅读 · 0 评论 -
基础算法-递归讲解及模板(C++实现)
在看本文之前,需要了解一下函数调用的过程:1.计算参数值,将函数压入函数栈2.执行函数3.结束本函数,栈帧返回至上层函数我们平时写的main也是个函数,在里面调用其他的函数。递归函数模板://递归函数void 递归函数(参数列表){ if(结束条件)//满足后执行下列语句,结束当前函数并返回 { //执行函数体,结束函数前该干的事情 } ...原创 2018-07-23 21:55:13 · 1336 阅读 · 0 评论 -
C++ STL容器用法示例大全
目录基础篇:C++ STL之vector的简单使用C++ STL之string的简单使用C++ STL之list的简单使用C++ STL之map的简单使用 动态规划-最长平衡子串(2018北邮机试真题)C++ STL之multimap的简单使用C++ STL之set的简单使用 最值问题-北邮oj88C++ STL之multis...原创 2018-07-23 22:06:36 · 26437 阅读 · 1 评论 -
c++ STL之list对结构体的增加、删除、排序等操作
对STL中的list进一步学习,编程过程中对结构体的操作很多。全部代码如下:/* Project:list对结构体的使用 Date: 2018/07/14 Author: Frank Yu 常用函数:int size() 返回容器元素个数;bool empty() 判断容器是否为空,true为空; 增加函数:void push_back(元素) 尾元素...原创 2018-07-15 11:10:00 · 8404 阅读 · 1 评论 -
C/C++ algorithm头文件的max()、min()、abs()和math头文件的fabs()
对于一般的数据类型——整型和浮点型,我们经常要得到最大值,最小值和绝对值本文章利用一些头文件的函数,进行展示。函数的参数及使用在程序代码及注释中体现。代码如下:/* Project: 最值及绝对值 Date: 2018/07/31 Author: Frank Yu algorithm的max(),min(),和abs() max(...原创 2018-07-31 21:54:03 · 81551 阅读 · 2 评论 -
C/C++ 使用memset、memcpy及fill对数组的操作
对数组的整体赋值,以及两个数组间的复制容易出错,这里使用string头文件中的memset和memcpy进行不必遍历数组,速度快。之前没有头文件,显示decla头文件:Stackoverflow的解释代码:/* Project: 数组的整体赋值与复制 Date: 2018/07/31 Author: Frank Yu memse...原创 2018-07-31 22:33:37 · 7385 阅读 · 0 评论 -
C++ STL之deque对结构体的增加,删除,排序的操作
****************deque的用法******************************** c.assign(beg,end) 将[beg; end)区间中的数据赋值给c。 c.assign(n,elem) 将n个elem的拷贝赋值给c。 c.at(idx) 传回索引idx所指的数据...原创 2018-09-27 10:24:23 · 3171 阅读 · 0 评论 -
C++ 使用Mysql的API连接mysql数据库,并解决中文乱码问题
项目配置我的mysql版本 mysql-5.7.26-winx64(不兼容vs的win32或x86,需要改平台)我的vs版本 vs2015项目->属性->配置管理器 改为X64平台改为X64平台项目->属性->VC++目录->包含目录 选择你安装的mysql的include目录包含目录项目->属性->VC++目录...原创 2019-04-29 21:30:18 · 1400 阅读 · 0 评论 -
C++ STL之multimap的使用
相比map,multimap可以插入相同键值的元素,两者的输入方式也不同。multimap有插入,删除,查找等功能。接下来,用一个程序将几个函数串起来。文章下方附有map的链接。代码:/*Author:YuBoDate:2018/2/6multimap*/#include<iostream>#include<string>#include&...原创 2018-02-07 19:50:20 · 1389 阅读 · 0 评论 -
C++ STL之map的简单使用
map是容器之一,有映照的功能,也采用红黑树,自动按照键值排序。可以根据下标访问等,接下来用一个程序将这些函数串起来进行展示。文章下方有multimap的链接。代码:/*Author:YuBoDate:2018/2/6map*/#include<iostream>#include<string>#include<map>usin...原创 2018-02-07 19:48:33 · 1460 阅读 · 3 评论 -
C++ STL之set的简单使用
Set是容器的一种,内部采用红黑树结构,insert函数直接将元素插入红黑树,用户不用去排序,解决了排序这个难题。另一特点是不可插入重复元素,在使用时应注意这一点。接下来将常用的功能集合在了一起,包括添加,删除,查找等功能。代码:/*SetAuthor:YuBo*/#include<iostream>#include<set>using nam...原创 2018-02-05 14:18:11 · 1292 阅读 · 1 评论 -
C++ STL之multiset的简单使用
multiset是容器中的一种,与set相比,可以插入相同的元素。其他地方和set几乎一模一样,可以看看set,见下面链接。set容器的使用2019年02月28日 更新....注:multiset容器有重复值,有时需要仅删除重复值的一个,例如,1 2 2 3,想要删除一个2。不能简单的使用s.erase(2),而是用 s.erase(s.lower_bound(2)),...原创 2018-02-05 14:33:58 · 2551 阅读 · 1 评论 -
C++STL stack的简单使用
栈容器的内容比较少,只提供了入栈,出栈,栈的大小,栈顶元素等函数,没有提供迭代器等,无法访问。不用遍历内部元素时可以使用。代码:/*statckAuthor:YuBoDate:2018/2/5*/#include<iostream>#include<stack>using namespace std;stack<int> s;v...原创 2018-02-05 15:19:58 · 1277 阅读 · 0 评论 -
C++STL 之queue的简单使用
queue,队列。特点:先进先出。C++ STL提供了入队,出队,获取队顶,队尾等函数。代码:/*queueAuthor:YuBoDate:2018/2/5*/#include<iostream>#include<queue>using namespace std;queue<int> q;void menu(){ cou...原创 2018-02-05 17:06:05 · 6412 阅读 · 0 评论 -
蓝桥杯-基础练习之BASIC-13数列排序(vector实现)
/*问题描述 给定一个长度为n的数列,将这个数列按从小到大的顺序排列。1输入格式 第一行为一个整数n。 第二行包含n个整数,为待排序的数,每个整数的绝对值小于10000。输出格式 输出一行,按从小到大的顺序输出排序后的数列。样例输入58 3 6 4 9样例输出3 4 6 8 9*/#include#include#includ原创 2018-02-06 08:54:48 · 632 阅读 · 0 评论 -
蓝桥杯 基础练习之BASIC-5查找整数(vetor实现)
/*问题描述给出一个包含n个整数的数列,问整数a在数列中的第一次出现是第几个。输入格式第一行包含一个整数n。第二行包含n个非负整数,为给定的数列,数列中的每个数都不大于10000。第三行包含一个整数a,为待查找的数。输出格式如果a在数列中出现了,输出它第一次出现的位置(位置从1开始编号),否则输出-1。样例输入61 9 4 8 3 9原创 2018-02-06 08:55:10 · 504 阅读 · 0 评论 -
蓝桥杯-问题 1606: 集合运算(C++set解决)
/**********问题 1606: [蓝桥杯][算法训练VIP]集合运算时间限制: 1Sec 内存限制: 128MB 提交: 5 解决: 2题目描述给出两个整数集合A、B,求出他们的交集、并集以及B在A中的余集。输入第一行为一个整数n,表示集合A中的元素个数。第二行有n个互不相同的用空格隔开的整数,表示集合A中的元素。第三行为一个整数m,表示集合B中的元素个数。第四行有m个互...原创 2018-02-11 19:26:15 · 934 阅读 · 0 评论 -
蓝桥杯-问题 1487: 不同单词个数统计(c++ set解决)
/*问题 1487: [蓝桥杯][算法提高VIP]不同单词个数统计时间限制: 1Sec 内存限制: 128MB 提交: 53 解决: 16题目描述编写一个程序,输入一个句子,然后统计出这个句子当中不同的单词个数。例如:对于句子“one little two little three little boys”,总共有5个不同的单词:one, little, two, thr...原创 2018-02-11 19:43:10 · 1263 阅读 · 0 评论 -
蓝桥杯 问题 1466字符串对比(c++实现)
/*问题 1466: [蓝桥杯][基础练习VIP]字符串对比时间限制: 1Sec 内存限制: 128MB 提交: 115 解决: 42给定两个仅由大写字母或小写字母组成的字符串(长度介于1到10之间),它们之间的关系是以下4中情况之一:1:两个字符串长度不等。比如 Beijing 和 Hebei2:两个字符串不仅长度相等,而且相应位置上的字符完全一致(原创 2018-02-07 19:20:58 · 629 阅读 · 0 评论 -
蓝桥杯 问题 1094: 字符串的输入输出处理(c++实现)
/*问题 1094: 字符串的输入输出处理时间限制: 1Sec 内存限制: 64MB 提交: 1657 解决: 386题目描述字符串的输入输出处理。输入第一行是一个正整数N,最大为100。之后是多行字符串(行数大于N), 每一行字符串可能含有空格,字符数不超过1000。输出先将输入中的前N行字符串(可能含有空格)原样输出,再将余下的字符串(不含有空格)以空格或回原创 2018-02-07 19:21:33 · 1734 阅读 · 0 评论 -
蓝桥杯 问题 1093: 字符逆序(c++实现 string)
/*问题 1093: 字符逆序时间限制: 1Sec 内存限制: 64MB 提交: 1413 解决: 733题目描述将一个字符串str的内容颠倒过来,并输出。str的长度不超过100个字符。输入输入包括一行。 第一行输入的字符串。输出输出转换好的逆序字符串。样例输入I am a student样例输出tneduts a ma I*/ /* Author:YuBo...原创 2018-02-07 19:22:18 · 721 阅读 · 0 评论 -
C++ STL之vector的简单使用
Vector是c++提供的容器之一,可以很好的扩展。除此之外,提供了一些函数。本篇文章将常用的函数进行了使用,利用switch组成了一个菜单,具有尾部扩张 、插入、删除、排序、显示 、修改等功能。适合初学者。代码:/********************* vector Author:YuBo Date:2018/1/23**********************/...原创 2018-02-02 11:45:36 · 2872 阅读 · 1 评论