c++中的链表乘法
Multiplying linked lists in c++
我正在编写一个程序,允许用户对使用双链表构造的大数执行算术运算。到目前为止,我已经做了一个加法函数,但现在我想做一个乘法函数,但我真的找不到什么好东西。我正在考虑这样做:
假设有两个数字,1000和2000|0000(|表示组成该数字的不同节点之间的间隔)。如果你把这些数字相乘,你会得到200|0000|0000。我可以做一个函数先把2个节点相乘然后再把它分成更小的节点。之后,它将乘以下一个节点,检查最后一个节点的大小,如果还有空间,则向该节点添加一部分,并将剩余的部分放入下一个节点。但是,如果一个数比另一个数小呢?然后用一个未定义的数乘以它。这种方法有什么"未来"吗?或者我应该找另一个(我做了一些研究,但到目前为止没有发现任何有用的)
如果性能对您来说不重要,您可以使用'高中方法'。首先实现一种方法,将一个数字乘以一个数字,然后开始将其中一个数字乘以另一个数字(同时为每个结果添加偏移量),然后将这些数字相加。比如:
123 x 456 =
738
+ 615
492
______________
56088
用链表实现这一点应该不会太难。
相关文章:
- 反向给定链表中的K节点
- 如果没有malloc,链表实现将失败
- 文本文件中的单词链表
- 努力将整数转换为链表。不知道我在这里做错了什么
- 链表,反向函数,数据结构
- 使用std::list创建循环链表
- 链表的泛型函数remove()与成员函数remove)
- 为什么不能修改对象中的值?另外,我如何改进此链表?
- 我们可以删除链表中静态内存中的节点吗
- C++,指针数组,指向双链表中的条目
- 链表中写入访问冲突的未知原因
- 如何修复链表类实现的未处理异常0xDDDDDDDD
- 打印所有链表的元素 (C++)
- 错误:需要类名(链表c++)
- 为什么C中的通用链表中存储的数据已损坏
- C++ 创建包含链表和字符串的对象的链接列表时出错
- 链表c++插入,所有情况都已检查,但没有任何工作
- 链表,将列表复制到另一个列表
- 为什么C++对链表中的下一个节点使用指针,而像 C# 或 Java 这样的语言只使用类 Node 的名称?
- 对单向链表进行排序时出现运行时错误