私は、ユーザーが二重連結リストを使用して構築された大きな数値で算術演算を実行できるようにするプログラムを書いています。これまで足し算の関数を作ってきましたが、掛け算の関数を作ろうとしているのですが、なかなかいいものが思いつきません。私はこれを行うことを考えていました:
1000 と 2000|0000 という 2 つの数値があるとします (| は、数値を構成するさまざまなノード間の区切りを表します)。数字を掛けると、200|0000|0000 になります。最初に 2 つのノードを乗算し、それを小さなノードに分割する関数を作成できます。その後、次のノードを乗算し、最後のノードのサイズを確認し、スペースが残っている場合は、そのノードにパーツを追加し、残りを次のノードに配置します。しかし、一方の数値が他方の数値よりも小さい場合はどうなるでしょうか。次に、未定義の数値を掛けます..このメソッドには「未来」がありますか? または、別のものを探す必要があります(いくつかの調査を行いましたが、これまでに役立つものは何も見つかりませんでした)