![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
C++
C++
-Hello_狂奔的蜗牛
Fly!!!
展开
-
全排列,next-permutation 简单实现
#include <iostream>#include <algorithm>using namespace std;int main(){ string str; cin >> str; sort(str.begin(),str.end()); cout << str << endl; while(next_permutation(str.begin(原创 2017-02-09 02:11:37 · 396 阅读 · 0 评论 -
C++中stringstream的使用方法和样例
上述是C++中输入输出流类的几种关系。istringstream是由一个string对象构造而来,从一个string对象读取字符。 ostringstream同样是有一个string对象构造而来,向一个string对象插入字符。stringstream则是用于C++风格的字符串的输入输出的。ignore函数参数:需要读取字符串的最大长度,需要忽略的字符测试代码:#include <bits/...原创 2018-03-11 09:42:18 · 385 阅读 · 0 评论 -
_builtin_popcount()计算二进制中多少个1
计算一个 32 位无符号整数有多少个位为1Counting out the bits 可以很容易的判断一个数是不是2的幂次:清除最低的1位(见上面)并且检查结果是不是0.尽管如此,有的时候需要直到有多少个被设置了,这就相对有点难度 了。 GCC有一个叫做__builtin_popcount的内建函数,它可以精确的计算1的个数。尽管如此,不同于__builtin_ctz,它并转载 2017-03-19 23:05:46 · 447 阅读 · 0 评论 -
C++中的enum类型
enum的基本结构:enum 枚举名{ 标识符[=整型常数], 标识符[=整型常数], … 标识符[=整型常数], } 枚举变量; 如果枚举没有初始化, 即省掉”=整型常数”时, 则从第一个标识符开始, 依次 次赋给标识符0, 1, 2, …enum类型的本质可以参考这个博客: en原创 2017-04-03 15:53:52 · 516 阅读 · 0 评论 -
C++运算符重载
IO运算符重载#include <bits/stdc++.h>using namespace std;class Point{private: double m_dx, m_dy, m_dz;public: friend ostream& operator << (ostream& out, Point& cPoint); friend istream& operato原创 2017-03-14 13:57:57 · 350 阅读 · 0 评论 -
接受int形参(double,,等等)返回int(...);并且一个vector对象保存指向这些函数的指针;进行加减乘除;输出结果
#include using namespace std;int f1(int a,int b){ return a+b;}int f2(int a,int b){ return a-b;}int f3(int a,int b){ return a*b;}int f4(int a,int b){ return a/b;}int main(原创 2017-03-13 09:16:46 · 277 阅读 · 0 评论 -
C++ 字符串序列 进行长度 排序的同时,保持字典序排序
elimDups实现了字典排序: unique()算法的作用是吧重复的元素放到最后并用”???”覆盖;然后用容器erase操作来删除后面。 stable_sort()就是在长度排序下,保持字典序。#include <iostream>#include <algorithm>using namespace std;void elimDups(vector<string> &word原创 2017-03-06 11:07:59 · 5594 阅读 · 0 评论 -
C++ set用法
set集合容器:实现了红黑树的平衡二叉检索树的数据结构,插入元素时,它会自动调整二叉树的排列,把元素放到适当的位置,以保证每个子树根节点键值大于左子树所有节点的键值,小于右子树所有节点的键值;另外,还得保证根节点左子树的高度与右子树高度相等。平衡二叉检索树使用中序遍历算法,检索效率高于vector、deque和list等容器,另外使用中序遍历可将键值按照从小到大遍历出来。构造set集合主要转载 2017-02-24 22:52:33 · 339 阅读 · 0 评论 -
C++预处理器的简单用法
//http://blog.csdn.net/yuayi521/article/details/9709191C++中的预处理器1、预处理器 预处理器是C++程序编译的一部分; 预处理器处理程序的源码,在编译器之前运行; 预处理器是C++继承C语言的,但是C++的大量特征减少了预处理器的使用; C++预转载 2017-02-05 14:26:37 · 1108 阅读 · 0 评论 -
deque的简单用法
#include <iostream>#include <deque>using namespace std;int main(){ deque<int> q; q.push_back(1); q.push_back(2); q.push_back(3); cout<<"before inserted(1,2,3) _back:"<<endl;原创 2016-12-10 10:24:03 · 331 阅读 · 0 评论 -
C++中的map用法大全
最全的c++map的用法此文是复制来的0.01. map最基本的构造函数;mapmapstring; mapmapint;mapmapstring; mapmapchar;mapmapchar; mapmapint;2. map添加数据;mapmaplive;1. maplive.insert(pair(102,"aclive"));2. maplive转载 2017-02-24 11:55:46 · 2653 阅读 · 0 评论 -
优先队列详解
优先队列:顾名思义,首先它是一个队列,但是它强调了“优先”二字,所以,已经不能算是一般意义上的队列了,它的“优先”意指取队首元素时,有一定的选择性,即根据元素的属性选择某一项值最优的出队~百度百科上这样描述的: 优先级队列 是不同于先进先出队列的另一种队列。每次从队列中取出的是具有最高优先权的元素 优先队列的类定义 优先队列是0个或多个元素的集合,每个元素都有一个优先权或转载 2017-01-22 20:37:50 · 298 阅读 · 0 评论 -
C++ 中string类型和 C风格 char类型字符串比较
与char*不同的是,string不一定以NULL('\0')结束。string长度可以根据length()得到,string可以根据下标访问。所以,不能将string直接赋值给char*1、首先必须了解,string可以被看成是以字符为元素的一种容器。字符构成序列(字符串)。有时候在字符序列中进行遍历,标准的string类提供了STL容器接口。具有一些成员函数比如be转载 2017-03-01 10:56:03 · 2483 阅读 · 0 评论 -
1022 Digital Library (30)(30 分)
1022 Digital Library (30)(30 分)A Digital Library contains millions of books, stored according to their titles, authors, key words of their abstracts, publishers, and published years. Each book is as...原创 2018-07-25 17:59:23 · 627 阅读 · 1 评论