2 セットの楽曲を比較する必要があります (つまり、MIDI 形式で取得したノートの詳細を抽出してデータベース テーブルに保存したものと、XML 形式で取得した楽譜) を比較する必要があります。楽譜に対する演奏を評価する場合 (ピッチ、デュレーション、リズムなどのノートの詳細)、参照 (楽譜) ノートからの見逃し/余分な/間違った/交換されたノートを識別するために、ノートの配置を行う必要があります。
私は約 1800 から 2500 のノートを 1 つのピースに持っています (ポリフォニックではさらに多くなる可能性があります。今はモノフォニックでやっています)。これらすべてを配列に入れる必要がありますか?メモリの過負荷またはスタック オーバーフローでしょうか。
KMP、Boyce-Moore などの文字列一致アルゴリズムがあります。ただし、動的計画法を使用して音符を揃えることもできます。動的計画法を使用してこれにアプローチするにはどうすればよいですか? 利用可能なアルゴリズムは何ですか? おおよその文字列一致についてですか?
生産性が高いのはどのアプローチですか? Boyce-Moore のような文字列マッチング アルゴリズム、または動的プログラミング? どちらがより効果的かをどのように評価できますか?
洞察や提案を大歓迎します 事前に感謝します