0

我有两个知道数组 - 每个数组的元素都包含一个数字,它们都变成一个数字。我必须添加这两个数字并在同一设计中创建结果数组。

现在,我该如何添加这些数字?好吧,就像在堆栈中一样,我从这两个数组中取出第一个元素,将它们相加,然后保存到结果 [0] 中。

然后我取出这两个数组的下一个第一个元素(我删除了前面的元素 - 从堆栈中取出它),添加它们,然后放入结果数组的顶部。

如果发生溢出(x > 9),我删除最后一个数字,并将其放在顶部。

这样我应该得到正确的结果。


在我向您解释了我的酷项目之后,是时候解决实际问题了 - 我如何为结果数组分配内存?

我的意思是,我真的不知道会有多少溢出(==我要放大多少次 results 数组),我不知道两个 XX 数字相加的结果是 XXX 还是 XX 数字, ETC...

这个问题我想了很久,也想不出来。好吧,也许除了分配诸如 sizeof(int)*999 之类的东西以确保 100% 确定:D ...

4

1 回答 1

1

既然你已经标记了这个,我会建议std::vectorstd::stack.

溢出的数量最多为数组中的位数。因此,对于,我会说分配 array1 和 array2 的最大大小加 1。

于 2013-04-12T23:23:00.357 回答