切除视线两多项式相加的完整算法假定储存两多项式的带头节点的单链表HaHb已经建立好
- 定义一个新的链表Hc,作为结果链表。
- 定义指针pa和pb,分别指向两个链表Ha和Hb的头节点。
- 定义一个指针pc,初始时指向Hc的头节点。
- 进入循环,每次循环执行以下操作:
- 如果pa和pb都不为NULL,则执行以下操作:
- 如果pa的指数小于pb的指数,则将pa所指的节点复制到pc的后面,pa指向下一个节点。
- 如果pb的指数小于pa的指数,则将pb所指的节点复制到pc的后面,pb指向下一个节点。
- 如果pa和pb的指数相等,则将它们的系数相加,生成一个新的节点,插入到pc的后面,pa和pb都指向下一个节点。
- pc指向新插入的节点。
- 如果pa不为NULL而pb为NULL,则将pa所指的节点复制到pc的后面,pa指向下一个节点,pc指向新插入的节点。
- 如果pb不为NULL而pa为NULL,则将pb所指的节点复制到pc的后面,pb指向下一个节点,pc指向新插入的节点。
- 如果pa和pb都为NULL,则退出循环。
- 如果pa和pb都不为NULL,则执行以下操作:
- 返回结果链表Hc。
原文地址: http://www.cveoy.top/t/topic/beGh 著作权归作者所有。请勿转载和采集!