【发布时间】:2019-03-18 14:31:03
【问题描述】:
我有两个字符串 "73248723847239847283974283749238" 和 "98231912938129381290120378988945" 它们包含数字,可能有 50 个字符长。我只找到了一个解决方案:将其转换为数字数组并比较它的总和,但从性能方面来说并不是很好。有谁知道我可以比较一下吗?
【问题讨论】:
-
为什么不能将它们作为常规字符串进行比较?
-
因为这个字符串代表数字,我必须比较它并找到其中最大的一个。
-
如何将它们转换为数字数组并比较总和以获得正确答案?我的意思是,500 = 5,而 199 = 19。500 明显大于 199,但 5 小于 19。
-
即使没有零也行不通。
12 => 1 + 2哪里有21 => 2 + 1和2 + 1 == 1 + 2。 -
你考虑过 BigIntegers 吗? docs.microsoft.com/en-us/dotnet/api/…