在C ++中找到带符号整数的填充向量中“第一个”非零元素的索引

时间:2016-07-22 20:39:34

标签: c++ vector integer zero signed

我有一个带有符号整数的零填充向量:

/cache

我想:

[1, 5, 2, 7, 4, 8, 0, 0, 1, 0, 0, 0, 0]

与二进制数在左侧用零填充的方式类似,

[1, 5, 2, 7, 4, 8, 0, 0, 1].

我的矢量工作原理相同:

100 == 000000100 == 00000000000100 == ...

我的矢量可能包含零。

但是,如果从向量的末尾开始并检查直到达到非零值,则可以找到向量的最后“实际”值的位置。

有关如何更有效地执行此操作的建议,而不是从末尾循环遍历向量?

  

注意:长度始终大于[1, 5, 2, 7, 4, 8, 0, 0, 1] == [1, 5, 2, 7, 4, 8, 0, 0, 1, 0, 0, 0] == ... ,但可能会大于2 ^ 9 (512)

0 个答案:

没有答案