【STL】vector数组(一维二维)初始化方法

学习资料
1.【C++】详解vector二维数组的全部操作

一维

vector<int> res(n, 0);//大小为n的数组,初始值全部设为0

Leetcode中常用,在类内定义外部变量,在函数内初始化

class Solution {
public:
    vector<vector<string>> res;
    vector<string> path;
    vector<bool> col, dg, udg;
    int n;
    
    vector<vector<string>> solveNQueens(int _n) {
        n = _n;
        col = vector<bool>(n);
        dg = udg = vector<bool>(n * 2);
        path = vector<string>(n, string(n, '.'));//初始化为'.'
    }
};

二维

初始化一个r * c的矩阵,所有值为0

vector<vector<int>> newOne(r, vector<int>(c, 0));

同理,初始化n * m的矩阵

vector<vector<int>> one(n, vector<int>(m));

二维数组按第二维排序

写法一:

vector<vector<int>> courses;

sort(courses.begin(), courses.end(), [](vector<int> &a, vector<int> &b) {
    return a[1] < b[1];
});

写法二:

bool cmp1(const vector<int> &a, const vector<int> &b)
{
    return a[1] < b[1];
}

sort(courses.begin(), courses.end(), cmp1);
posted @   Tshaxz  阅读(7)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
· 全网最简单!3分钟用满血DeepSeek R1开发一款AI智能客服,零代码轻松接入微信、公众号、小程
Language: HTML
点击右上角即可分享
微信分享提示