![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
文章平均质量分 53
Sylviawuuuu
这个作者很懒,什么都没留下…
展开
-
STL 优先队列 priority_queue
在优先队列中,元素被赋予优先级。当访问元素时,具有最高优先级的元素最先删除。优先队列是一个队列,具有队列的所有特性,包括队列的基本操作,在这基础上添加了内部的一个排序(堆排序),它本质是一个堆实现的。priority_queue<Type, Container, Functional>当需要用自定义的数据类型时才需要传入 Type, Container, Functional 这三个参数,使用基本数据类型时,只需要传入数据类型,默认是大顶堆。Type: 数据类型Container: 容器原创 2022-03-16 14:56:22 · 1188 阅读 · 0 评论 -
C++简单文件输入输出
#include<iostream>#include<fstream>using namespace std;int main() { ifstream in("try.txt"); int a[4]; for (int i = 0; i < 4; i++) { in >> a[i]; //读入文件 } for (int i ...原创 2019-05-05 16:00:45 · 188 阅读 · 0 评论 -
bfs
有一天,小哈一个人去玩迷宫,但是他迷路了。现在你知道迷宫的地图需要去解救小哈。迷宫由n行m列组成(m,n<=50),每个单元格可能是空地或者障碍物。你要找一条解救小哈的最短路径。#include <iostream> using namespace std;/* 5行4列5 4 0 0 1 00 0 0 00 0 1 00 1 0 00 0 0 1*/ s...原创 2019-02-26 19:48:03 · 152 阅读 · 0 评论 -
蓝桥杯 圆的面积 C++输出格式
问题描述给定圆的半径r,求圆的面积。输入格式输入包含一个整数r,表示圆的半径。输出格式输出一行,包含一个实数,四舍五入保留小数点后7位,表示圆的面积。样例输入4样例输出50.2654825数据规模与约定1 &lt;= r &lt;= 10000。#include&lt;iostream&gt;#include&lt;math.h&gt;#include&lt;ioman原创 2019-03-05 21:24:45 · 514 阅读 · 0 评论 -
结构体 vector 排序
#include<iostream>#include<vector>#include<algorithm>using namespace std;struct stu{ string name; int score; stu(string name1,int score1):name(name1),score(score1){ }}; bo...原创 2019-03-22 09:49:25 · 320 阅读 · 0 评论 -
bfs框架
bfs需要借助队列来实现1、初始的时候把起始点放入队列中,并标记起点访问。2、如果队列不为空,从队列中取出一个元素x,否则算法结束。3、访问和x相连的所有点v,如果v没有被访问,把v入队,并标记已经访问过。4、重复执行步骤2.bfs框架:void bfs...原创 2019-02-27 14:43:36 · 638 阅读 · 0 评论 -
快速幂运算
快速幂运算int pow1(int a, int b, int mod) { int res = 1, base = a; while (b != 0) { if (b & 1 != 0) res = res*base % mod; base = base * base % mod; ...原创 2019-03-12 18:35:24 · 141 阅读 · 0 评论 -
LeetCode 写给自己 指针
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNode* ad...原创 2019-04-21 19:16:31 · 139 阅读 · 0 评论 -
C++ queue简单应用
有7个小朋友坐成一圈,分别是1,2,… 7,按顺序从1号小朋友开始从1报数,报到5的人结束游戏,并从下一个人开始从1开始报数,问最后留下来的是几号小朋友?#include <iostream>#include <queue>using namespace std;int main(){ int n,m; cin>>n>>m; //n表...原创 2019-02-27 15:00:04 · 459 阅读 · 0 评论 -
并查集
题意:首先在地图上给你若干个城镇,这些城镇都可以看作点,然后告诉你哪些对城镇之间是有道路直接相连的。最后要解决的是整幅图的连通性问题。比如随意给你两个点,让你判断它们是否连通,或者问你整幅图一共有几个连通分支,也就是被分成了几个互相独立的块。像畅通工程这题,问还需要修几条路,实质就是求有几个连通分支。如果是1个连通分支,说明整幅图上的点都连起来了,不用再修路了;如果是2个连通分支,则只要再修1条路...原创 2019-03-11 21:49:44 · 106 阅读 · 0 评论 -
输入 分割字符串
#include<iostream>#include<vector>#include<cstring>#include <sstream>using namespace std;int main(){ string str; string word; vector<string> v; getl...原创 2019-03-08 15:44:03 · 151 阅读 · 0 评论 -
substr 取出字符串的所有子串
substr(pos,n):表示从下标为pos处,取连续n个字符的子串!!!(我原先以为两个参数是起始下标和终点下标,答案怎么都不对)#include<iostream>#include<cstring>#include<set>using namespace std;int main(){ string s; set<str...原创 2019-03-20 21:42:45 · 934 阅读 · 0 评论 -
标题:错误票据 输入输出的处理
标题:错误票据某涉密单位下发了某种票据,并要在年终全部收回。每张票据有唯一的ID号。全年所有票据的ID号是连续的,但ID的开始数码是随机选定的。因为工作人员疏忽,在录入ID号的时候发生了一处错误,造成了某个ID断号,另外一个ID重号。你的任务是通过编程,找出断号的ID和重号的ID。假设断号不可能发生在最大和最小号。要求程序首先输入一个整数N(N&lt;100)表示后面数据行数...原创 2019-03-02 15:05:21 · 206 阅读 · 0 评论 -
C++ pair 和make_pair
#include <iostream>using namespace std; /** std::pair主要的作用是将两个数据组合成一个数据,两个数据可以是同一类型或者不同类型。例如std::pair<int,float> 或者 std::pair<double,double>等。pair实质上是一个结构体,其主要的两个成员变量是first和sec...转载 2019-02-27 15:21:54 · 108 阅读 · 0 评论 -
printf 输出 格式修饰符
printf 格式修饰符#include&lt;iostream&gt;#include&lt;stdio.h&gt;using namespace std;int main(){ float a = 123.4567890; int b = 12; printf("123456789"); cout&lt;&lt;endl; printf(&qu原创 2019-03-15 16:12:06 · 1068 阅读 · 0 评论 -
set、stack、queue的初始化和遍历 vector中删除元素
#include&amp;amp;lt;iostream&amp;amp;gt;#include&amp;amp;lt;set&amp;amp;gt;#include&amp;amp;lt;vector&amp;amp;gt;using namespace std;int main(){ int a[5]={23,1,45,4,8}; set&amp;amp;lt;int&am原创 2019-03-07 19:38:36 · 1179 阅读 · 0 评论 -
next_permutation()
next_permutationnext_permutation(start,end)全排列中的下一个,对数组中的前n个元素进行全排列,同时并改变数组本身的值。当序列不存在下一个排列时,函数返回false,否则返回true#include <iostream>#include <algorithm>using namespace std;int a[3]={1,...原创 2019-02-24 14:45:46 · 1529 阅读 · 0 评论 -
npos and find
写给自己的笔记#include<iostream>#include<string>#include<algorithm>#include<vector>using namespace std;int main(){ vector<int> v; v.push_back(5); v.push_back(6); vec...原创 2019-03-10 14:44:23 · 160 阅读 · 0 评论 -
排序:选择排序、交换排序和归并排序
选择排序选择排序的基本思想是:每次从待排序的文件中选择出排序码最小的记录将该记录放于已排序文件的最后一个位置,直到已排序文件记录个数等于初始待排序文件的记录个数为止。直接选择排序(不稳定排序)树型选择排序堆排序(不稳定排序)直接选择排序直接选择排序是一种简单的方法,首先从所有n个待排序记录中选择排序码最小的记录举该记录,将该记录与第1个记录交换,再从剩下的n-1个记录中选出排序码最小的记录和第 2个记录交换。重复这样的操作直到剩下两个记录时,再从中选出排序码最小的记录和第n-1个记录交换.原创 2022-02-22 14:39:15 · 2633 阅读 · 1 评论 -
重载构造函数 初始化列表
重载构造函数 初始化列表/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode() : val(0), next(nullptr) {} * ListNode(int x) : val(x), next(nullptr) {} * ListNode(int x, ListNode *next) : val(x原创 2022-02-21 16:56:38 · 502 阅读 · 0 评论 -
字符串和数字的相互转换
#include<iostream>#include<sstream>#include<stdlib.h>using namespace std;string int2str(int num,string s){ stringstream ss; ss<<num; ss>>s; return s;}int mai...原创 2019-03-02 14:56:24 · 554 阅读 · 0 评论 -
C++ STL
C++ STLstringvectorsetunordered_setlistmapstringstring s1;//初始化字符串,空字符串string s2 = s1; //拷贝初始化,深拷贝字符串string s3 = "I am Yasuo"; //直接初始化,s3存了字符串string s4(10, 'a'); //s4存的字符串是aaaaaaaaaastring s5(s4); //拷贝初始化,深拷贝字符串string s6("I am Ali"); //直接初始化原创 2022-02-15 14:06:18 · 231 阅读 · 0 评论