カラツバ法
From Wikipedia, the free encyclopedia
アルゴリズム
単純な例として、数と数の積を求める ()。
まず、数と数をそれぞれ上位・下位の2つに分割する。 分割の基数を (例えば3桁ずつに分割するなら )とすると、
これら z0, z1, z2 を求めるための乗算を Karatsuba以前の方法 (Long multiplication) で行うと、乗算を4回行うことになる。
Karatsubaの方法では、乗算を3回で済ませられる。
計算例
とすると、
関連項目
- トム・クック乗算 - 1963年。カラツバ法はToom-2の特別な場合である。
- ショーンハーゲ・ストラッセン法 - 1971年。高速フーリエ変換/離散フーリエ変換を使うアルゴリズムで、カラツバ法やToom-3より高速である。
- フューラーのアルゴリズム - 2007年。上のショーンハーゲ・ストラッセン法より高速である。