用集合存字符串做大数乘法。

逍遥jc 2013-06-07 10:47:48
用小学乘法列竖行算的,感觉效率不是很高啊,阶乘只能算到1000多点,算2000多基本上要很久才行。
有没有大神推荐个稍微好点的算法啊,大概需要算到5000以上。
...全文
252 6 打赏 收藏 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
点点_123 2013-06-09
  • 打赏
  • 举报
回复
用集合或者数组村的话,多少都行啊。不把它当做数字处理,而是当做字符处理。多少都能存在数组里的啊。
逍遥jc 2013-06-09
  • 打赏
  • 举报
回复
引用 5 楼 u010300707 的回复:
用集合或者数组村的话,多少都行啊。不把它当做数字处理,而是当做字符处理。多少都能存在数组里的啊。
解决了。阶乘我当作数字算的。用数组搞定了。最后输出的时候转为字符串就行了。
ghostkngiht 2013-06-08
  • 打赏
  • 举报
回复
用这个试试java.math.BigInteger
逍遥jc 2013-06-08
  • 打赏
  • 举报
回复
引用 2 楼 ghostkngiht 的回复:
用这个试试java.math.BigInteger
这个算法得自己写的。阶乘都好几百位的数字呢。
逍遥jc 2013-06-08
  • 打赏
  • 举报
回复
引用 1 楼 u010300707 的回复:
以前做过这个运算,用两个数组村两个乘数,用一个数组存最后的结果。很简单的。算法就是像普通我们做乘法在草稿纸上运算一样的相乘。
就是不知道效率怎么样。我目前用集合存的话,阶乘只能算到2000不到。
点点_123 2013-06-07
  • 打赏
  • 举报
回复
以前做过这个运算,用两个数组村两个乘数,用一个数组存最后的结果。很简单的。算法就是像普通我们做乘法在草稿纸上运算一样的相乘。

62,620

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧