【发布时间】:2016-02-20 04:22:59
【问题描述】:
情况:
我有一个系统可以读取连续的数字流(仅限整数)。
- 这些数字都是正和负。
- 一些数字是溢出算术运算的结果:因此这些数字在流中将是负数。
问题:
我如何区分流中溢出的负数和未溢出的负数?有没有办法找到并丢弃溢出的数字?我正在用 C# 开发并且无法控制流源。所以我不能更改代码或添加任何检查。
【问题讨论】:
-
您有关于这些数字的任何其他信息/统计数据吗?比如分布、max/min、p99等?
-
我掌握的信息是数字是 32 位数字,范围为 2147483647 到 -2147483647。这些是单数整数。
-
根据您提供的信息 - 没有办法(我在回答中列出了一些选项,如果您没有这些限制,可能会有所帮助)。请注意,如果这是面试问题,可能是您需要查询的其他一些信息,这将允许特定类型的过滤。