gpt4 book ai didi

c++ - 如何到达内部 vector 可能具有不同长度的 vector vector 的第 N 个元素?

转载 作者:行者123 更新时间:2023-11-28 00:12:37 42 4
gpt4 key购买 nike

假设我们有一张 table : std::vector< std::vector<int> > table(3, std::vector<int>)看起来像这样:

 11 21 31 41 45 51 61 
71 81 91 10 19 29
39 49 59 69 79 89 99 109

我们得到了一些 int nThPos 1 到 N 之间的数字 table 中的元素总数(这里是 21)。

找到与元素 # nThPos 对应的元素的最有效方法是什么?或者它在表格中的坐标([行][列])?

对于这种特殊情况,表格向哪个方向展平并不重要:if nThPos == 8 ,结果可能是 71(即 [1][0])或 91(即 [1][2])。

注意:我的问题与 this one 非常相似.但我的情况是内部 vector 有不同的长度。

最佳答案

如果您不选择维护一些辅助数据(或选择完全不同的基本表示),那么没有比显而易见的方法更有效的方法(遍历外部 vector ,累积内部 vector 的总大小,直到达到右内 vector )。

如果效率很重要,请以不同方式存储数据。

关于c++ - 如何到达内部 vector 可能具有不同长度的 vector vector 的第 N 个元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32206854/

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