在尝试对多项式进行建模时,特别是它们的乘法,我遇到了以下问题.在乘法期间,两个多项式的单个单项式相乘,当然可以发生我有(3x ^ 2 y 5x y ^ 2)*(x y).结果包含3x ^ 2 y ^ 2和5 x ^ 2 y ^ 2,我想通过添加立即组合.
当然,我想使用单项式的部分x ^ 2 y ^ 2作为(哈希)映射中的关键字来添加不同的系数(在示例中为3和5).但是我设想的单项式对象自然也应该包含系数,该系数不应该是地图键的一部分.
当然,我可以写单项对象的equals / hashcode,使它们忽略系数.但这感觉错了,因为数学上单项式显然只等于另一个,如果系数相等的话.
为中间操作引入无系数单项式对象也看起来不正确.
我没有使用地图,而是使用列表并使用二进制搜索和一个忽略系数的专用比较器.
如果没有使用不使用密钥’equals / hashcode的地图,而是使用专用的地图,那么有没有更好的想法如何融合单项式?