zoukankan      html  css  js  c++  java
  • 标准模板库 STL 使用之 —— vector 使用 tricks

    1. 从已有 vector(或数组)中复制

    vector<int> a{....};
    int an = a.size();
    int half = an/2;
    vector<int> a0(a.begin(), a.begin()+half);
    vector<int> a1(a.begin()+half, a.end());

    2. 一维向量 ⇒ 不定长二维向量

    我们并不死板地定义vector<vector<int>>这样的对象,

    vector<int> v[10];
    
    v[0].clear();
    v[0].push_back(1); v[0].push_back(2);
    
    v[1].clear();
    v[1].push_back(10); v[1].push_back(11); v[1].push_back(12);

    3. 倒数第一、倒数第二

    vector<int> path[10];
    int d = path[path.size() - 1];        // 倒数第一
    int c = path[path.size() - 2];        // 倒数第二
    int b = path[path.size() - 3];        // 倒数第三
    int a = path[path.size() - 4];        // 倒数第四;

    当然也可采用指针(迭代器)的方式:

    int d = *(path.end()-1);
    int c = *(path.end()-2);
    int b = *(path.end()-3);
    int a = *(path.end()-4);
  • 相关阅读:
    csrf跨站请求伪造
    IO 之 InputStream 和 Reader
    javadoc tags
    java this
    递归
    java 文件中 定义一个字符串,它的默认编码是什么?
    合并数组
    << 移位运算
    final static T
    Base64.java 工具类
  • 原文地址:https://www.cnblogs.com/mtcnn/p/9423885.html
Copyright © 2011-2022 走看看