gpt4 book ai didi

c++ - 如何将矩阵映射到某个整数值?

转载 作者:行者123 更新时间:2023-11-30 02:26:32 24 4
gpt4 key购买 nike

比如我要映射

       1  2  3
3 4 1 -> 0
1 1 1

1 2 3
1 1 2 -> 1
1 1 1

等等。是否可以使用 std::map?

编辑:我的意思是问我是否有二维数组或一维 vector 数组,如何将其映射到一些整数值。

最佳答案

像这样使用 std::arraystd::array :

std::map< int, std::array<std::array< int , 3>, 3> > m = 
{ {0, {{ { 1,2,3},
{ 3,4,1},
{ 1,1,1}
}}
},
{1, {{
{ 1,2,3},
{ 1,1,2},
{ 1,1,1}
}}
}
};

如果行和列在编译时未知,您可以使用 std::vectorstd::vector

std::map< int, std::vector<std::vector< int > > > m;

对于相反的映射矩阵到整数,你可以颠倒顺序:

std::map< std::array<std::array< int , 3>, 3>, int  > m_opp =
{ { {{ { 1,2,3},
{ 3,4,1},
{ 1,1,1}
}},
0
},
{ {{
{ 1,2,3},
{ 1,1,2},
{ 1,1,1}
}},
1
}
};

std::map< std::vector<std::vector< int > >, int > m_opp;

关于c++ - 如何将矩阵映射到某个整数值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42743726/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com