zoukankan      html  css  js  c++  java
  • c++ 语言细节

    #include <iostream>
    using namespace std;
    int main()
    {
         cout << " Hello World! " << endl;
         return 0;
    }

    1. iostream的意思是输入输出流。直接点说就是in(输入) out(输出) stream(流)。取in、out的首字母与stream合成。

    11.29

    在记录所有的可行遍历路径的时候,具体的一部分实现。怎么访问stack底部元素 vector 的resize函数用法
    表示2的32次方这个数字


    参考c++文档,栈只有top可以访问。 个人理解:起到去掉最后一个元素的作用v.resize( v.size()-1 ),这也揭示了vector实际上能够完全
    替代栈和队列结构,因为vector的访问的特点,下标访问,实际上这也是栈和队列封装之后的特点,只给出了特定的接口。

    1左移32位 ll t=1L<<32;

    11.30
    默认无参数的构造函数,


    node(): step(0),head(0) {}

    12.1

    反向迭代器, 集合 多重集合问题

    bitset使用


    reverse_iterator it rbegin(最后一个元素的位置) rend(第一个元素的前一个地址) 还是 it++
    multiset 即可 头文件也是set
    参考:
    什么是bitset

    bitset 是STL库中的二进制容器,根据C++ reference 的说法,bitset可以看作bool数组,但优化了空间复杂度和时间复杂度,并且可以像整形一样按位与或。

    使用方法

    申明

    bitset的申明要指明长度

    1

     
    bitset<length> bi


    这样就申明了一个长度为length的名叫bi的bitset

    赋值

    bitset重载了[]运算符,故可以像bool数组那样赋值

    bi[2] = 1;

    这样就能将第二位赋值为1

    常用函数

    b1 = b2 & b3;//按位与
    b1 = b2 | b3;//按位或
    b1 = b2 ^ b3;//按位异或
    b1 = ~b2;//按位补
    b1 = b2 << 3;//移位
    int one = b1.count();//统计1的个数

    优化作用

    常常碰到处理的数组只有0和1的变化,此时就可以使用bitset优化。比如求两个集合的交集可以使用按位与运算,求并集可以使用按位或运算

  • 相关阅读:
    iOS 日期格式
    时间复杂度、空间复杂度
    转载 -- 算法题
    奇奇怪怪的Bug
    iOS12中推送通知新特性
    iOS开发网络篇—Socket编程
    iOS:菜单控制器和菜单项:UIMenuController和UIMenuItem
    关于textField输入光标颜色及cleanButton大小和颜色的设置
    腾讯云开发微信小程序使用体验
    简单理解JavaScript原型链
  • 原文地址:https://www.cnblogs.com/paulzjt/p/5450047.html
Copyright © 2011-2022 走看看