BI4IRZ 詳細な説明がないため、このバイナリ文字列の「01」が、それぞれドット(点)とスリット(線)の発音時間を表しているのかどうか教えていただけますでしょうか? 例えば、「A」に対応して「0111」である場合、自動鍵盤のようなシステムでは、自動鍵盤自体が発音時間によってドットとスリットを区別しないため、これは不要です。重要なのは、キーを押す時間によって連続的に発音されるドットやスリットの数を判断することです。「0111」は「j」を表しているのでしょうか?
あなたのアルゴリズムの効率は、BSTよりもかなり優れているようです。再帰的な検索を必要とせず、空間も節約できるため、マッチングを行う際に時間がかかるという点は理解しました。