検索対象となる検索語の読みの文字列を取得する文字列取得手段と、前記文字列を、前記検索語の読みとして利用可能な全文字種類をそれぞれ識別する全文字コードの順列にて表した第1順列部から構成された第1格納情報を作成する第1格納情報作成手段と、前記文字列を構成する文字種類を表したインデックス部と、該文字列を前記インデックス部における文字種類をそれぞれ識別する識別ビットコードの順列にて表した第2順列部とから構成された第2格納情報を作成する第2格納情報作成手段と、前記第1格納情報のデータサイズが前記第2格納情報のデータサイズ以下の場合には、前記検索語の読みの文字列として前記第1格納情報を記憶し、前記第1格納情報のデータサイズが前記第2格納情報のデータサイズよりも大きい場合には、前記検索語の読みの文字列として前記第2格納情報を記憶する検索情報記憶手段と、を備えたことを特徴とする検索情報作成装置。前記第2格納情報作成手段は、前記文字列を構成する文字種類の種類数に対応し、該文字列を構成する各文字種類をそれぞれ識別する部分文字コードで表した文字インデックス部を作成する文字インデックス部作成手段と、前記検索語の読みとして利用可能な全文字種類に対応するビット配列を有し、前記ビット配列の各ビットのうち、前記文字列を構成する各文字種類に対応するビットをONに設定し、それ以外のビットをOFFに設定したビットインデックス部を作成するビットインデックス部作成手段と、を有し、該第2格納情報作成手段は、前記文字インデックス部のデータサイズが前記ビットインデックス部のデータサイズ以下の場合には、該文字インデックス部を前記インデックス部として設定し、前記文字インデックス部のデータサイズが前記ビットインデックス部のデータサイズよりも大きい場合には、該ビットインデックス部を前記インデックス部として設定することを特徴とする請求項1に記載の検索情報作成装置。前記第2格納情報作成手段は、前記文字列を構成する文字種類の種類数に対応し、該文字列を構成する各文字種類をそれぞれ識別する部分文字コードで表した文字インデックス部を作成する文字インデックス部作成手段を有し、該第2格納情報作成手段は、前記文字インデックス部を、前記インデックス部として設定することを特徴とする請求項1に記載の検索情報作成装置。前記第2格納情報作成手段は、前記検索語の読みとして利用可能な全文字種類に対応するビット配列を有し、前記ビット配列の各ビットのうち、前記文字列を構成する各文字種類に対応するビットをONに設定し、それ以外のビットをOFFに設定したビットインデックス部を作成するビットインデックス部作成手段を有し、該第2格納情報作成手段は、前記ビットインデックス部を前記インデックス部として設定することを特徴とする請求項1に記載の検索情報作成装置。複数の検索語のそれぞれの前記第2格納情報を構成する各インデックス部のうち、複数の検索語において共通するインデックス部を抽出して格納した共有インデックスデータを記憶する共有インデックス記憶手段を備え、前記検索情報記憶手段は、前記共通するインデックス部を有する前記第2格納情報については、当該共通するインデックス部に替えて、前記共有インデックスデータにおける該共通するインデックス部を示すインデックスコードを記憶することを特徴とする請求項1乃至請求項4のいずれかに記載の検索情報作成装置。複数の検索語のそれぞれの前記第2格納情報を構成する各インデックス部のうち、複数の検索語において共通するインデックス部を抽出して格納した共有インデックスデータを作成する共有インデックスデータ作成手段と、前記共有インデックスデータに格納されている複数のインデックス部のうち、一方のインデックス部の文字種類の全てが他方のインデックス部の文字種類に含まれる包含関係にあるインデックス部が存在するか否かを判定する包含関係判定手段と、一方のインデックス部の文字種類の全てが他方のインデックス部の文字種類に含まれる包含関係にあるインデックス部が存在すると判定された場合には、当該他方のインデックス部を抽出して統合インデックス部として格納した統合インデックスデータを記憶する統合インデックス部記憶手段と、を備え、前記検索情報記憶手段は、インデックス部の文字種類の全てが、前記統合インデックスデータに格納されている前記統合インデックス部の文字種類に含まれる包含関係にある前記第2格納情報については、当該インデックス部に替えて、前記統合インデックスデータにおける当該統合インデックス部を示すインデックスコードを記憶すると共に、前記第2順列部に替えて、前記文字列を当該統合インデックス部における文字種類をそれぞれ識別する識別ビットコードの順列にて表した第3順列部を記憶することを特徴とする請求項1乃至請求項4のいずれかに記載の検索情報作成装置。前記検索情報記憶手段は、前記検索語の文字列を含む候補施設名に関する検索補助情報を前記第1格納情報又は前記第2格納情報に関連付けて記憶することを特徴とする請求項1乃至請求項6のいずれかに記載の検索情報作成装置。検索対象となる検索語の読みの文字列を取得する文字列取得工程と、前記文字列取得工程で取得した文字列を、前記検索語の読みとして利用可能な全文字種類をそれぞれ識別する全文字コードの順列にて表した第1順列部から構成された第1格納情報を作成する第1格納情報作成工程と、前記文字列取得工程で取得した文字列を構成する文字種類を表したインデックス部と、該文字列を前記インデックス部における文字種類をそれぞれ識別する識別ビットコードの順列にて表した第2順列部とから構成された第2格納情報を作成する第2格納情報作成工程と、前記第1格納情報作成工程で作成した第1格納情報のデータサイズが、前記第2格納情報作成工程で作成した第2格納情報のデータサイズ以下の場合には、前記検索語の読みの文字列として前記第1格納情報を記憶し、前記第1格納情報作成工程で作成した第1格納情報のデータサイズが、前記第2格納情報作成工程で作成した第2格納情報のデータサイズよりも大きい場合には、前記検索語の読みの文字列として前記第2格納情報を記憶する検索情報記憶工程と、を備えたことを特徴とする検索情報作成方法。コンピュータに、検索対象となる検索語の読みの文字列を取得する文字列取得工程と、前記文字列取得工程で取得した文字列を、前記検索語の読みとして利用可能な全文字種類をそれぞれ識別する全文字コードの順列にて表した第1順列部から構成された第1格納情報を作成する第1格納情報作成工程と、前記文字列取得工程で取得した文字列を構成する文字種類を表したインデックス部と、該文字列を前記インデックス部における文字種類をそれぞれ識別する識別ビットコードの順列にて表した第2順列部とから構成された第2格納情報を作成する第2格納情報作成工程と、前記第1格納情報作成工程で作成した第1格納情報のデータサイズが、前記第2格納情報作成工程で作成した第2格納情報のデータサイズ以下の場合には、前記検索語の読みの文字列として前記第1格納情報を記憶し、前記第1格納情報作成工程で作成した第1格納情報のデータサイズが、前記第2格納情報作成工程で作成した第2格納情報のデータサイズよりも大きい場合には、前記検索語の読みの文字列として前記第2格納情報を記憶する検索情報記憶工程と、を実行させるためのプログラム。前記した特許文献1に記載された車両用ナビゲーション装置では、登録地点の名称が増大した場合には、登録地点の名称をCDから全て読み出してメモリ上に展開し、入力された検索語と前方一致する登録地点の名称を全数検索することによって、検索対象の件数を迅速に表示することが考えられる。しかしながら、登録地点の名称等の文字列を、検索語として利用可能な全文字種類をそれぞれ識別する文字コード例えば、50音全てを識別可能な文字コードである。等でメモリに記憶した場合には、一文字一文字を表現するために必要なデータサイズが大きくなってしまうため、検索対象として十分な個数の登録地点の名称等の文字列情報を記憶するためには、必要なメモリ容量が増大するという問題がある。そこで、本発明は、上述した問題点を解決するためになされたものであり、検索対象となる文字列情報を記憶するメモリ容量の増大を抑止することができる検索情報作成装置、検索情報作成方法及びプログラムを提供することを目的とする。前記目的を達成するため請求項1に係る検索情報作成装置は、検索対象となる検索語の読みの文字列を取得する文字列取得手段と、前記文字列を、前記検索語の読みとして利用可能な全文字種類をそれぞれ識別する全文字コードの順列にて表した第1順列部から構成された第1格納情報を作成する第1格納情報作成手段と、前記文字列を構成する文字種類を表したインデックス部と、該文字列を前記インデックス部における文字種類をそれぞれ識別する識別ビットコードの順列にて表した第2順列部とから構成された第2格納情報を作成する第2格納情報作成手段と、前記第1格納情報のデータサイズが前記第2格納情報のデータサイズ以下の場合には、前記検索語の読みの文字列として前記第1格納情報を記憶し、前記第1格納情報のデータサイズが前記第2格納情報のデータサイズよりも大きい場合には、前記検索語の読みの文字列として前記第2格納情報を記憶する検索情報記憶手段と、を備えたことを特徴とする。また、請求項2に係る検索情報作成装置は、請求項1に記載の検索情報作成装置において、前記第2格納情報作成手段は、前記文字列を構成する文字種類の種類数に対応し、該文字列を構成する各文字種類をそれぞれ識別する部分文字コードで表した文字インデックス部を作成する文字インデックス部作成手段と、前記検索語の読みとして利用可能な全文字種類に対応するビット配列を有し、前記ビット配列の各ビットのうち、前記文字列を構成する各文字種類に対応するビットをONに設定し、それ以外のビットをOFFに設定したビットインデックス部を作成するビットインデックス部作成手段と、を有し、該第2格納情報作成手段は、前記文字インデックス部のデータサイズが前記ビットインデックス部のデータサイズ以下の場合には、該文字インデックス部を前記インデックス部として設定し、前記文字インデックス部のデータサイズが前記ビットインデックス部のデータサイズよりも大きい場合には、該ビットインデックス部を前記インデックス部として設定することを特徴とする。また、請求項3に係る検索情報作成装置は、請求項1に記載の検索情報作成装置において、前記第2格納情報作成手段は、前記文字列を構成する文字種類の種類数に対応し、該文字列を構成する各文字種類をそれぞれ識別する部分文字コードで表した文字インデックス部を作成する文字インデックス部作成手段を有し、該第2格納情報作成手段は、前記文字インデックス部を、前記インデックス部として設定することを特徴とする。また、請求項4に係る検索情報作成装置は、請求項1に記載の検索情報作成装置において、前記第2格納情報作成手段は、前記検索語の読みとして利用可能な全文字種類に対応するビット配列を有し、前記ビット配列の各ビットのうち、前記文字列を構成する各文字種類に対応するビットをONに設定し、それ以外のビットをOFFに設定したビットインデックス部を作成するビットインデックス部作成手段を有し、該第2格納情報作成手段は、前記ビットインデックス部を前記インデックス部として設定することを特徴とする。また、請求項5に係る検索情報作成装置は、請求項1乃至請求項4のいずれかに記載の検索情報作成装置において、複数の検索語のそれぞれの前記第2格納情報を構成する各インデックス部のうち、複数の検索語において共通するインデックス部を抽出して格納した共有インデックスデータを記憶する共有インデックス記憶手段を備え、前記検索情報記憶手段は、前記共通するインデックス部を有する前記第2格納情報については、当該共通するインデックス部に替えて、前記共有インデックスデータにおける該共通するインデックス部を示すインデックスコードを記憶することを特徴とする。また、請求項6に係る検索情報作成装置は、請求項1乃至請求項4のいずれかに記載の検索情報作成装置において、複数の検索語のそれぞれの前記第2格納情報を構成する各インデックス部のうち、複数の検索語において共通するインデックス部を抽出して格納した共有インデックスデータを作成する共有インデックスデータ作成手段と、前記共有インデックスデータに格納されている複数のインデックス部のうち、一方のインデックス部の文字種類の全てが他方のインデックス部の文字種類に含まれる包含関係にあるインデックス部が存在するか否かを判定する包含関係判定手段と、一方のインデックス部の文字種類の全てが他方のインデックス部の文字種類に含まれる包含関係にあるインデックス部が存在すると判定された場合には、当該他方のインデックス部を抽出して統合インデックス部として格納した統合インデックスデータを記憶する統合インデックス部記憶手段と、を備え、前記検索情報記憶手段は、インデックス部の文字種類の全てが、前記統合インデックスデータに格納されている前記統合インデックス部の文字種類に含まれる包含関係にある前記第2格納情報については、当該インデックス部に替えて、前記統合インデックスデータにおける当該統合インデックス部を示すインデックスコードを記憶すると共に、前記第2順列部に替えて、前記文字列を当該統合インデックス部における文字種類をそれぞれ識別する識別ビットコードの順列にて表した第3順列部を記憶することを特徴とする。更に、請求項7に係る検索情報作成装置は、請求項1乃至請求項6のいずれかに記載の検索情報作成装置において、前記検索情報記憶手段は、前記検索語の文字列を含む候補施設名に関する検索補助情報を前記第1格納情報又は前記第2格納情報に関連付けて記憶することを特徴とする。また、請求項8に係る検索情報作成方法は、検索対象となる検索語の読みの文字列を取得する文字列取得工程と、前記文字列取得工程で取得した文字列を、前記検索語の読みとして利用可能な全文字種類をそれぞれ識別する全文字コードの順列にて表した第1順列部から構成された第1格納情報を作成する第1格納情報作成工程と、前記文字列取得工程で取得した文字列を構成する文字種類を表したインデックス部と、該文字列を前記インデックス部における文字種類をそれぞれ識別する識別ビットコードの順列にて表した第2順列部とから構成された第2格納情報を作成する第2格納情報作成工程と、前記第1格納情報作成工程で作成した第1格納情報のデータサイズが、前記第2格納情報作成工程で作成した第2格納情報のデータサイズ以下の場合には、前記検索語の読みの文字列として前記第1格納情報を記憶し、前記第1格納情報作成工程で作成した第1格納情報のデータサイズが、前記第2格納情報作成工程で作成した第2格納情報のデータサイズよりも大きい場合には、前記検索語の読みの文字列として前記第2格納情報を記憶する検索情報記憶工程と、を備えたことを特徴とする。更に、請求項9に係るプログラムは、コンピュータに、検索対象となる検索語の読みの文字列を取得する文字列取得工程と、前記文字列取得工程で取得した文字列を、前記検索語の読みとして利用可能な全文字種類をそれぞれ識別する全文字コードの順列にて表した第1順列部から構成された第1格納情報を作成する第1格納情報作成工程と、前記文字列取得工程で取得した文字列を構成する文字種類を表したインデックス部と、該文字列を前記インデックス部における文字種類をそれぞれ識別する識別ビットコードの順列にて表した第2順列部とから構成された第2格納情報を作成する第2格納情報作成工程と、前記第1格納情報作成工程で作成した第1格納情報のデータサイズが、前記第2格納情報作成工程で作成した第2格納情報のデータサイズ以下の場合には、前記検索語の読みの文字列として前記第1格納情報を記憶し、前記第1格納情報作成工程で作成した第1格納情報のデータサイズが、前記第2格納情報作成工程で作成した第2格納情報のデータサイズよりも大きい場合には、前記検索語の読みの文字列として前記第2格納情報を記憶する検索情報記憶工程と、を実行させるためのプログラムである。請求項1に係る検索情報作成装置、請求項8に係る検索情報作成方法及び請求項9に係るプログラムでは、検索対象となる検索語の読みの文字列を全文字コードの順列にて表した第1格納情報と、該文字列の各文字をインデックス部における文字種類をそれぞれ識別する識別ビットコードの順列にて表した第2格納情報とのそれぞれのデータサイズを比較して、データサイズ少ない方を検索語の読みの文字列として記憶する。これにより、検索対象となる検索語の読みの文字列を全文字コードの順列にて表して作成した第1格納情報の格納形式だけでなく、第1格納情報の格納形式よりもデータサイズが少なくなる第2格納情報の格納形式で検索語の読みの文字列を記憶することが可能となり、検索対象となる検索語の文字列を記憶する検索情報記憶手段のメモリ容量の増大を抑止することが可能となる。また、請求項2に係る検索情報作成装置では、文字インデックス部のデータサイズが、ビットインデックス部のデータサイズ以下の場合には、該文字インデックス部を第2格納情報のインデックス部として設定するため、インデックス部を迅速に作成することができる。また、文字インデックス部のデータサイズが、ビットインデックス部のデータサイズよりも大きい場合には、該ビットインデックス部をインデックス部として設定するため、インデックス部のデータサイズを、検索語の読みとして利用可能な全文字種類に対応するビット配列のデータサイズに固定することが可能となり例えば、50音の場合には、ビット配列のデータサイズを6バイトに固定することができる。、第2格納情報のデータサイズの増加を効果的に抑制することが可能となる。また、請求項3に係る検索情報作成装置では、文字列を構成する各文字種類を文字コードで表した文字インデックス部を第2格納情報のインデックス部として設定するため、第2格納情報のインデックス部を迅速に作成することができる。また、請求項4に係る検索情報作成装置では、検索語の読みとして利用可能な全文字種類に対応するビット配列の各ビットのうち、文字列を構成する各文字種類に対応するビットをONに設定し、それ以外のビットをOFFに設定したビットインデックス部をインデックス部として設定する。これにより、インデックス部のデータサイズを、検索語の読みとして利用可能な全文字種類に対応するビット配列のデータサイズに固定することが可能となり例えば、50音の場合には、ビット配列のデータサイズを6バイトに固定することができる。、第2格納情報のデータサイズの増加を効果的に抑制することが可能となる。また、請求項5に係る検索情報作成装置では、共通するインデックス部を有する第2格納情報については、当該共通するインデックス部に替えて、共有インデックスデータにおける該共通するインデックス部を示すインデックスコードを記憶することによって、該第2格納情報のデータサイズの更なる削減化を図ることができ、検索情報記憶手段のメモリ容量の増大を更に抑止することが可能となる。また、請求項6に係る検索情報作成装置では、インデックス部の文字種類の全てが、統合インデックスデータに格納されている統合インデックス部の文字種類に含まれる包含関係にある第2格納情報については、インデックス部に替えて、統合インデックスデータにおける当該統合インデックス部を示すインデックスコードを記憶することによって、第2格納情報のデータサイズの更なる削減化を図ることができ、検索情報記憶手段のメモリ容量の増大を更に抑止することが可能となる。また、インデックス部の文字種類の全てが統合インデックス部の文字種類に含まれる包含関係にある第2格納情報については、第2順列部に替えて、検索語の読みの文字列を当該統合インデックス部における文字種類をそれぞれ識別する識別ビットコードの順列にて表した第3順列部を記憶することによって、第2格納情報のデータサイズの増加を防止することができ、検索情報記憶手段のメモリ容量の増大を確実に抑止することが可能となる。更に、請求項7に係る検索情報作成装置では、検索語の文字列を含む候補施設名に関する検索補助情報を第1格納情報又は第2格納情報に関連付けて記憶するため、入力された検索語と前方一致する候補施設名に関する検索補助情報を迅速に検索することが可能となる。以下、本発明に係る検索情報作成装置、検索情報作成方法及びプログラムを具体化した一実施例に基づき図面を参照しつつ詳細に説明する。[情報作成装置の概略構成]先ず、本実施例に係る検索情報作成装置の一例としての情報作成装置1の概略構成について図1に基づいて説明する。図1は本実施例に係る情報作成装置1を示したブロック図である。図1に示すように、本実施例に係る情報作成装置1は、各種のデータが記録されたデータ記録部11と、入力された情報に基づいて、各種の演算処理を行う制御部12と、操作者からの操作を受け付ける操作部14と、操作者に対して施設名等の情報を表示する液晶ディスプレイ15と、操作案内等に関する音声ガイダンスを出力するスピーカ16と、不図示の地図情報配信センタ等との間で携帯電話網等を介して通信を行う通信装置17と、フラッシュメモリを搭載した携帯型記憶媒体の一例としてのSDメモリカード5に後述の階乗個数テーブル32図8参照、文字インデックス部テーブル35図11参照、ビットインデックス部テーブル38図17参照、順列部テーブル39図21参照等を書き込み、また、該SDメモリカード5から施設名情報としての後述の施設名データテーブル31図2参照を読み出すカードリードライト部カードR/W部19とから構成されている。また、情報作成装置1は、ネットワーク4を介してナビゲーション装置2と各種の情報の送受信が可能となるように構成されている。例えば、情報作成装置1は、後述の施設名データテーブル31図2参照、階乗個数テーブル32図8参照、文字インデックス部テーブル35図11参照、ビットインデックス部テーブル38図17参照、順列部テーブル39図21参照等をネットワーク4を介してナビゲーション装置2へ配信することができる。また、ネットワーク4としては、例えば、携帯電話回線網、電話回線網、公衆通信回線網、専用通信回線網、インターネット等の通信回線網等の通信系を使用することができる。以下に、情報作成装置1を構成する各構成要素について説明すると、データ記録部11は、外部記憶装置及び記録媒体としてのハードディスク図示せずと、ハードディスクに記憶された施設名データベース施設名DB27、検索情報データベース検索情報DB28及び所定のプログラム等を読み出すとともにハードディスクに所定のデータを書き込む為のドライバを備えている。この施設名DB27には、施設名とキーワードで区切った施設名の読みとを関連付けて記憶する後述の施設名データテーブル31図2参照等が格納されている。ここで、キーワードは、意味を成す単位で構成された単語の文字列である。また、検索情報DB28には、後述の階乗個数テーブル32、文字インデックス部テーブル35、ビットインデックス部テーブル38、順列部テーブル39等が格納されている。また、図1に示すように、情報作成装置1を構成する制御部12は、情報作成装置1の全体の制御を行う演算装置及び制御装置としてのCPU21、CPU21が各種の演算処理を行うに当たってワーキングメモリとして使用されるRAM22、制御用のプログラム等が記憶されたROM23、SDメモリカード5やROM23から読み出したプログラムを記憶するフラッシュメモリ24等の内部記憶装置や、時間を計測するタイマ25等を備えている。また、ROM23には、後述の施設名検索用情報としての文字インデックス部テーブル35、ビットインデックス部テーブル38、順列部テーブル39を作成する検索用情報作成処理のプログラム図3参照等が記憶されている。また、ROM23に各種のプログラムが記憶されるようになっているが、カードR/W部19を介してSDメモリカード5からプログラム、施設名データテーブル31、階乗個数テーブル32等を読み出してフラッシュメモリ24やデータ記録部11に書き込むこともできる。更に、SDメモリカード5を交換することによってプログラムや施設名データテーブル31等を更新することができる。更に、制御部12には、操作部14、液晶ディスプレイ15、スピーカ16、通信装置17、カードR/W部19の各周辺装置アクチュエータが電気的に接続されている。尚、本実施例においては、カードR/W部19には、SDメモリカード5が装着されるが、ミニSDメモリカード、マイクロSDメモリカード等を使用するようにしてもよい。ここで、施設名DB27に格納される施設名データテーブル31の一例について図2に基づいて説明する。図2に示すように、施設名データテーブル31は、施設名と、読みとから構成されている。この、施設名には、検索対象となる目的地を表す施設名が記憶されている。また、読みには、施設名の読みが、施設名に記憶された各施設名に対応して記憶されている。また、施設名の読みは、キーワード毎に区切り文字例えば/である。で区切られて記憶されている。尚、施設名の読みに含まれるが、ぱ等の濁音半濁音はか、は等の清音に、ゃ、っ等の小文字仮名拗音促音はや、つ等の大文字仮名に、長音は対応する母音等のように、仮名の基本文字に変換して記憶される。例えば、バーバースノーの読みは、はあはあ/すのおと記憶される。また、かなのじゅーじゅー美合町店の読みは、かなのしゆうしゆう/みあいちよう/てんと記憶される。[検索用情報作成処理]次に、上記のように構成された情報作成装置1のCPU21が実行する処理であって、文字インデックス部テーブル35、ビットインデックス部テーブル38、順列部テーブル39を作成する検索用情報作成処理について図3乃至図21に基づいて説明する。尚、図3にフローチャートで示されるプログラムは、操作部14の不図示の施設名検索用情報作成ボタンが押下された場合に、CPU21により実行される。図3に示すように、先ず、ステップ以下、Sと略記する11において、CPU21は、文字インデックス部テーブル35図11参照を作成する文字インデックス部テーブル作成処理のサブ処理を実行する。そして、S12において、CPU21は、ビットインデックス部テーブル38図17参照を作成するビットインデックス部テーブル作成処理のサブ処理を実行する。続いて、S13において、CPU21は、順列部テーブル39図21参照を作成する順列部テーブル作成処理のサブ処理を実行した後、当該処理を終了する。[文字インデックス部テーブル作成処理]次に、文字インデックス部テーブル作成処理のサブ処理について図4乃至図11に基づいて説明する。図4に示すように、S111において、CPU21は、検索対象となる検索語の読みの文字列として、施設名データテーブル31の読みから全てのキーワードを順番に読み出してS112以降の処理を実行したか否かを判定する判定処理を実行する。尚、CPU21は、施設名データテーブル31に記憶されている1番目の施設名から順番に、それぞれに対応する読みの先頭のキーワードから順次読み出し、各キーワードについてS112以降の処理を実行する。そして、施設名データテーブル31の読みから全てのキーワードを順番に読み出してS112以降の処理を実行していない、つまり、後述の文字インデックス部テーブル35を作成して検索情報DB28に格納していないと判定した場合にはS111:NO、CPU21は、S112の処理に移行する。S112において、CPU21は、施設名データテーブル31の読みから残っている次のキーワードを読み出して、RAM22に記憶する。そして、S113において、CPU21は、当該キーワードの文字列を順列部テーブル39に記憶する際の格納形式1乃至格納形式3のそれぞれで表した場合について、各格納形式1~3のデータサイズバイト数を算出する。ここで、格納形式1乃至格納形式3について図6及び図7に基づいて説明する。図6及び図7に示すように、格納形式1は、キーワードの文字列の文字数を1バイトで表した文字数と、この文字列の各文字を、全文字コードとしての全文字種類50音では、あ、い、う、、んの仮名である。の各文字を表す1バイトの文字コードから選択した文字コードの順列にて表した順列部とから構成した格納形式である。従って、キーワードが4文字のかかかかの場合には、格納形式1では、5バイトのデータサイズとなる。また、キーワードが7文字のかききかきききの場合には、格納形式1では、8バイトのデータサイズとなる。また、格納形式2は、キーワードの文字列の文字種類の種類数を1バイトで表した文字の種類と、この文字列を構成する各文字種類を、部分文字コードとしての1バイトの文字コードで表した文字インデックス部と、この文字列の文字数を1バイトで表した文字数と、この文字列を、文字インデックス部を構成する文字種類中での順番を示すことができるビット数の数値識別ビットコードとして機能する。の順列にて表した順列部と、から構成した格納形式である。従って、キーワードが4文字のかかかかの場合には、各文字かを1ビットの数値で表すことができるため、格納形式2では、4バイトのデータサイズとなる。また、キーワードが7文字のかききかきききの場合には、各文字か、きを2ビットの数値で表すことができるため、格納形式2では、6バイトのデータサイズとなる。また、格納形式3は、キーワードの読みに用いる全文字種類50音では、あ、い、う、、んの仮名である。に対応するビット配列を有する固定バイト数50音では、6バイトである。で構成され、キーワードの文字列を構成する文字種類に対応するビットをONに設定し、それ以外のビットをOFFに設定したビットインデックス部と、この文字列の文字数を1バイトで表した文字数と、この文字列を、ビットインデックス部でONに設定された文字種類中での順番を示すことができるビット数の数値識別ビットコードとして機能する。の順列にて表した順列部と、から構成した格納形式である。従って、キーワードが4文字のかかかかの場合には、各文字かを1ビットの数値で表すことができるため、格納形式3では、8バイトのデータサイズとなる。また、キーワードが7文字のかききかきききの場合には、各文字か、きを2ビットの数値で表すことができるため、格納形式3では、9バイトのデータサイズとなる。続いて、図4に示すように、S114において、CPU21は、当該キーワードの文字列を順列部テーブル39に記憶する格納形式2のデータサイズが、格納形式1及び格納形式3の各データサイズよりも少ないデータサイズか否かを判定する判定処理を実行する。そして、当該キーワードの文字列を順列部テーブル39に格納する格納形式2のデータサイズが、格納形式1及び格納形式3の各データサイズよりも少ないデータサイズでないと判定した場合にはS114:NO、CPU21は、再度S111以降の処理を実行する。一方、当該キーワードの文字列を順列部テーブル39に格納する格納形式2のデータサイズが、格納形式1及び格納形式3の各データサイズよりも少ないデータサイズであると判定した場合にはS114:YES、CPU21は、S115の処理に移行する。S115において、CPU21は、RAM22上に作成したインデックスカウントテーブル33図9参照のインデックス内容に、当該格納形式2の文字インデックス部が未だ記憶されていないか否か、つまり、当該格納形式2の文字インデックス部を記憶する必要があるか否かを判定する判定処理を実行する。ここで、先ず、検索情報DB28に予め格納されている階乗個数テーブル32について図8に基づいて説明する。図8に示すように、階乗個数テーブル32は、文字の種類と、階乗個数とから構成されている。この文字の種類には、キーワードの文字列を構成する文字種類の種類数が記憶されている。また、階乗個数には、この文字の種類に記憶されている種類数を表すために必要なビット数で表現できる最大値、つまり、Nビットの場合は、2のN乗の数値が記憶されている。例えば、文字の種類が1~2種類の場合には、階乗個数には、1ビットで文字種類数を表すことができるため、2の1乗の2が記憶されている。また、文字の種類が3~4種類の場合には、階乗個数には、2ビットで文字種類数を表すことができるため、2の2乗の4が記憶されている。また、文字の種類が5~8種類の場合には、階乗個数には、3ビットで文字種類数を表すことができるため、2の3乗の8が記憶されている。次に、RAM22上に作成されたインデックスカウントテーブル33について図9に基づいて説明する。図9に示すように、インデックスカウントテーブル33は、階乗個数と、インデックス内容と、カウント値とから構成されている。この階乗個数には、格納形式2の文字インデックス部の文字種類の種類数を階乗個数テーブル32の文字の種類とした場合に、この文字の種類に対応する階乗個数の数値が記憶される。また、インデックス内容には、格納形式2の文字インデックス部が記憶される。また、カウント値には、インデックス内容に記憶されている文字種類を格納形式2の文字インデックス部とするキーワードの個数が記憶される。尚、情報作成装置1の起動時には、このカウント値には、0が記憶されている。そして、図4に示すように、インデックスカウントテーブル33のインデックス内容に、当該文字インデックス部が未だ記憶されていない、つまり、当該文字インデックス部を記憶する必要があると判定した場合にはS115:YES、CPU21は、S116の処理に移行する。S116において、CPU21は、当該文字インデックス部の文字種類の種類数を階乗個数テーブル32の文字の種類として、この文字の種類に対応する階乗個数の数値を読み出し、インデックスカウントテーブル33の階乗個数に記憶する。また、CPU21は、当該文字インデックス部をインデックスカウントテーブル33のインデックス内容に記憶した後、S117の処理に移行する。例えば、図9に示すように、格納形式2の文字インデックス部が1バイトの文字コードかの場合には図6参照、文字種類の種類数は1種類のため、CPU21は、インデックスカウントテーブル33の階乗個数に2を記憶する。また、CPU21は、インデックスカウントテーブル33のインデックス内容には、1バイトの文字コードかを記憶する。一方、インデックスカウントテーブル33のインデックス内容に、当該文字インデックス部が既に記憶されている、つまり、当該文字インデックス部を記憶する必要がないと判定した場合にはS115:NO、CPU21は、S117の処理に移行する。S117において、CPU21は、インデックスカウントテーブル33の当該文字インデックス部が記憶されているインデックス内容に対応するカウント値を読み出し、このカウント値に1加算して再度記憶した後、再度S111以降の処理を実行する。例えば、図9に示すように、文字インデックス部かきがインデックスカウントテーブル33のインデックス内容に初めて記憶された場合には、インデックス内容のかに対応するカウント値に1が記憶される。また、文字インデックス部かがインデックス内容に記憶されていた場合には、インデックス内容のかに対応するカウント値の1がインクリメントされて2となる。他方、上記S111で、施設名データテーブル31の読みから全てのキーワードを順番に読み出してS112以降の処理を実行したと判定した場合にはS111:YES、CPU21は、S118の処理に移行する。S118において、CPU21は、インデックス統合処理のサブ処理を実行後、S119の処理に移行する。[インデックス統合処理]ここで、インデックス統合処理のサブ処理について図5及び図10に基づいて説明する。図5に示すように、S211において、CPU21は、インデックスカウントテーブル33のインデックス内容に記憶されている全データについてS212以降の処理を実行したか否かを判定する判定処理を実行する。そして、インデックスカウントテーブル33のインデックス内容に記憶されている全データについてS212以降の処理を実行していないと判定した場合にはS211:NO、CPU21は、S212の処理に移行する。S212において、CPU21は、インデックスカウントテーブル33のインデックス内容に残っているデータのうち、文字コードの数以下、文字数という。の多い方から次のインデックス内容と、このインデックス内容に対応する階乗個数及びカウント値とを読み出して、RAM22に記憶する。続いて、S213において、CPU21は、読み出した当該インデックス内容の文字数と階乗個数とが一致するか否かを判定する判定処理を実行する。そして、読み出した当該インデックス内容の文字数と階乗個数とが一致すると判定した場合にはS213:YES、CPU21は、S214の処理に移行する。S214において、CPU21は、RAM22上に作成した統合カウントテーブル34図10参照のインデックス候補に当該インデックス内容を記憶すると共に、このインデックス候補に対応する階乗個数とカウント値に当該階乗個数と当該カウント値を記憶した後、再度S211以降の処理を実行する。ここで、RAM22上に作成された統合カウントテーブル34について図10に基づいて説明する。図10に示すように、統合カウントテーブル34は、階乗個数と、インデックス候補と、カウント値とから構成されている。従って、統合カウントテーブル34のインデックス候補には、格納形式2の文字インデックス部が記憶される。例えば、図9に示すように、インデックスカウントテーブル33からインデックス内容として2バイトの文字コードかくと、階乗個数として2、カウント値として2を読み出して、当該インデックス内容かくの文字数2文字と階乗個数2とが一致すると判定した場合にはS213:YES、CPU21は、当該階乗個数2を統合カウントテーブル34の階乗個数に記憶する。また、CPU21は、当該2バイトの文字コードかくと当該カウント値2を統合カウントテーブル34のインデックス候補とカウント値にそれぞれ記憶する。一方、読み出した当該インデックス内容の文字数と階乗個数とが一致しないと判定した場合にはS213:NO、CPU21は、S215の処理に移行する。S215において、CPU21は、統合カウントテーブル34のインデックス候補の全データと当該インデックス内容との包含関係をチェックしたか否かを判定する判定処理を実行する。そして、統合カウントテーブル34のインデックス候補の全データと当該インデックス内容との包含関係をチェックして、当該インデックス内容の文字コードを全て包含するインデックス候補が無かったと判定した場合にはS215:YES、CPU21は、上記S214の処理に移行する。S214において、CPU21は、当該インデックス内容を統合カウントテーブル34のインデックス候補に記憶すると共に、このインデックス候補に対応する階乗個数とカウント値に当該階乗個数と当該カウント値をそれぞれ記憶した後、再度S211以降の処理を実行する。一方、統合カウントテーブル34のインデックス候補の全データと当該インデックス内容との包含関係をチェックしていないと判定した場合にはS215:NO、CPU21は、S216の処理に移行する。S216において、統合カウントテーブル34から次のインデックス候補を読み出し、RAM22に記憶する。続いて、S217において、CPU21は、この次のインデックス候補の文字数が、当該インデックス内容に対応する当該階乗個数以下か否かを判定する判定処理を実行する。そして、この次のインデックス候補の文字数が、当該インデックス内容に対応する当該階乗個数よりも大きい、つまり、インデックス候補の文字種類中での順番を示すことができるビット数が、当該階乗個数よりも大きいと判定した場合にはS217:NO、CPU21は、再度S215以降の処理を実行する。一方、この次のインデックス候補の文字数が、当該インデックス内容に対応する当該階乗個数以下である、つまり、インデックス候補の文字種類中での順番を示すことができるビット数が、当該階乗個数以下であると判定した場合にはS217:YES、CPU21は、S218の処理に移行する。S218において、CPU21は、この次のインデックス候補の文字種類の中に当該インデックス内容の全ての文字種類が含まれる包含関係にあるか否かを判定する判定処理を実行する。そして、この次のインデックス候補の文字種類に当該インデックス内容の全ての文字種類が含まれていないと判定した場合にはS218:NO、CPU21は、再度S215以降の処理を実行する。一方、この次のインデックス候補の文字種類に当該インデックス内容の全ての文字種類が含まれる包含関係にあると判定した場合にはS218:YES、CPU21は、S219の処理に移行する。S219において、CPU21は、統合カウントテーブル34の当該インデックス候補に対応するカウント値を読み出し、インデックスカウントテーブル33の当該インデックス内容に対応するカウント値を加算して、再度、統合カウントテーブル34の当該インデックス候補に対応するカウント値に記憶した後、再度S211以降の処理を実行する。例えば、図9及び図10に示すように、統合カウントテーブル34のインデックス候補のかきの文字数2は、インデックスカウントテーブル33のインデックス内容かの階乗個数2以下であり、また、インデックス候補かきの文字種類の中にインデックス内容かの全ての文字種類が含まれる。従って、CPU21は、インデックス候補かきのカウント値1を読み出し、インデックスカウントテーブル33の当該インデックス内容かに対応するカウント値2を加算したカウント値3を統合カウントテーブル34の当該インデックス候補かきに対応するカウント値に記憶する。他方、上記S211で、インデックスカウントテーブル33のインデックス内容に記憶されている全データについてS212以降の処理を実行したと判定した場合、つまり、統合カウントテーブル34の作成を終了した場合にはS211:YES、CPU21は、当該サブ処理を終了して、文字インデックス部テーブル作成処理のサブ処理に戻り、S119の処理に移行する。そして、図4に示すように、S119において、CPU21は、統合カウントテーブル34のインデックス候補に記憶されている全データについてS120以降の処理を実行したか否かを判定する判定処理を実行する。そして、統合カウントテーブル34のインデックス候補に記憶されている全データについてS120以降の処理を実行していないと判定した場合にはS119:NO、CPU21は、S120の処理に移行する。S120において、CPU21は、統合カウントテーブル34のインデックス候補に残っているデータから次のインデックス候補と、このインデックス候補に対応する階乗個数及びカウント値とを読み出して、RAM22に記憶する。尚、CPU21は、インデックス候補に残っているデータのうち、文字種類の少ない順で、且つ、50音順に次のインデックス候補と、このインデックス候補に対応する階乗個数及びカウント値とを読み出して、RAM22に記憶するようにしてもよい。続いて、S121において、CPU21は、読み出したカウント値が2以上か否か、つまり、2回以上カウントされているか否かを判定する判定処理を実行する。そして、このカウント値が1の場合にはS121:NO、CPU21は、再度S119以降の処理を実行する。一方、このカウント値が2以上の場合にはS121:YES、CPU21は、当該インデックス候補は2つ以上の格納形式2の順列部に対して利用できる共有インデックス部であると判定し、S122の処理に移行する。S122において、CPU21は、RAM22上に作成した統合インデックスデータとしての文字インデックス部テーブル35図11参照の統合インデックス部としてのインデックス内容に当該インデックス候補を記憶すると共に、このインデックス内容に対応する階乗個数に当該インデックス候補に対応する階乗個数を記憶する。そして、CPU21は、このインデックス内容に対応する文字インデックス部テーブル35のインデックスコードとしての文字インデックス番号に、インデックス内容を識別する識別コードを記憶した後、再度S119以降の処理を実行する。例えば、識別コードとして、当該インデックス候補をインデックス内容に記憶した順番を表す番号を記憶する。ここで、RAM22上に作成された文字インデックス部テーブル35について図11に基づいて説明する。図11に示すように、文字インデックス部テーブル35は、階乗個数と、格納形式2の文字インデックス部を記憶するインデックス内容と、インデックス内容に記憶した文字インデックス部を識別する識別コードを記憶する文字インデックス番号とから構成されている。従って、文字インデックス部テーブル35のインデックス内容には、格納形式2の文字インデックス部のうち、2回以上使用される文字インデックス部、又は、他の文字インデックス部の全ての文字種類を含んだ文字インデックス部が記憶される。他方、上記S119で、統合カウントテーブル34のインデックス候補に記憶されている全データについてS120以降の処理を実行したと判定した場合、つまり、文字インデックス部テーブル35の作成を終了した場合にはS119:YES、CPU21は、作成した文字インデックス部テーブル35を検索情報DB28に格納した後、当該サブ処理を終了してメインフローチャートに戻る。尚、CPU21は、文字インデックス部テーブル35のインデックス内容を文字種類の少ない順で、且つ、50音順にソートした後、文字インデックス番号に識別コードとして1から順番に番号を記憶した後、当該文字インデックス部テーブル35を検索情報DB28に格納するようにしてもよい。[ビットインデックス部テーブル作成処理]次に、ビットインデックス部テーブル作成処理のサブ処理について図12乃至図17に基づいて説明する。図12に示すように、S311において、CPU21は、上記S111の処理を実行する。そして、施設名データテーブル31の読みから全てのキーワードを順番に読み出してS312以降の処理を実行していない、つまり、後述のビットインデックス部テーブル38を作成して検索情報DB28に格納していないと判定した場合にはS311:NO、CPU21は、S312の処理に移行する。S312において、CPU21は、上記S112の処理を実行する。そして、S313において、CPU21は、上記S113の処理を実行して、当該キーワードの文字列を順列部テーブル39に記憶する際の格納形式1乃至格納形式3のそれぞれで表した場合について、各格納形式1~3のデータサイズバイト数を算出する。ここで、格納形式1乃至格納形式3のデータサイズバイト数の一例について図13及び図14に基づいて説明する。図13に示すように、キーワードが14文字のかいしようかんきようかいはつの場合には、格納形式1では、15バイトのデータサイズとなる。また、格納形式2では、18バイトのデータサイズとなる。また、格納形式3では、14バイトのデータサイズとなる。また、図14に示すように、キーワードが16文字のおかさきこうしようおかさきかんりの場合には、格納形式1では、17バイトのデータサイズとなる。また、格納形式2では、20バイトのデータサイズとなる。また、格納形式3では、15バイトのデータサイズとなる。続いて、図12に示すように、S314において、CPU21は、当該キーワードの文字列を順列部テーブル39に記憶する格納形式3のデータサイズが、格納形式1及び格納形式2の各データサイズよりも少ないデータサイズか否かを判定する判定処理を実行する。そして、当該キーワードの文字列を順列部テーブル39に格納する格納形式3のデータサイズが、格納形式1及び格納形式2の各データサイズよりも少ないデータサイズでないと判定した場合にはS314:NO、CPU21は、再度S311以降の処理を実行する。一方、当該キーワードの文字列を順列部テーブル39に格納する格納形式3のデータサイズが、格納形式1及び格納形式2の各データサイズよりも少ないデータサイズであると判定した場合にはS314:YES、CPU21は、S315の処理に移行する。S315において、CPU21は、RAM22上に作成したインデックスカウントテーブル36図15参照のインデックス内容に、当該格納形式3のビットインデックス部が未だ記憶されていないか否か、つまり、当該格納形式3のビットインデックス部を記憶する必要があるか否かを判定する判定処理を実行する。ここで、RAM22上に作成されたインデックスカウントテーブル36について図15に基づいて説明する。図15に示すように、インデックスカウントテーブル36は、階乗個数と、インデックス内容と、カウント値とから構成されている。この階乗個数には、格納形式3のビットインデックス部のONに設定された各ビットに対応する文字種類の種類数を階乗個数テーブル32の文字の種類とした場合に、この文字の種類に対応する階乗個数の数値が記憶される。また、インデックス内容には、格納形式3のビットインデックス部を構成する6バイト固定のビット配列が記憶される。尚、図15においては、説明を簡単にするため、インデックスカウントテーブル36のインデックス内容に、6バイトのビット配列に替えて、ビットインデックス部のONに設定された各ビットに対応する文字種類を記載し、この文字種類に基づいてインデックス内容を説明する。また、カウント値には、インデックス内容に記憶されている6バイトのビット配列を格納形式3のビットインデックス部とするキーワードの個数が記憶される。尚、情報作成装置1の起動時には、このカウント値には、0が記憶されている。そして、図12に示すように、インデックスカウントテーブル36のインデックス内容に、当該ビットインデックス部が未だ記憶されていない、つまり、当該ビットインデックス部を記憶する必要があると判定した場合にはS315:YES、CPU21は、S316の処理に移行する。S316において、CPU21は、当該ビットインデックス部のONに設定された各ビットに対応する文字種類の種類数を階乗個数テーブル32の文字の種類として、この文字の種類に対応する階乗個数の数値を読み出し、インデックスカウントテーブル36の階乗個数に記憶する。また、CPU21は、当該ビットインデックス部をインデックスカウントテーブル36のインデックス内容に記憶した後、S317の処理に移行する。例えば、図15に示すように、格納形式3のビットインデックス部が、うかきくふるに対応するビットがONに設定されている場合には、文字種類の種類数は6種類のため、CPU21は、インデックスカウントテーブル36の階乗個数に8を記憶する。また、CPU21は、インデックスカウントテーブル36のインデックス内容には、うかきくふるに対応するビットがONに設定されている6バイトのビット配列を記憶する。一方、インデックスカウントテーブル36のインデックス内容に、当該ビットインデックス部が既に記憶されている、つまり、当該ビットインデックス部を記憶する必要がないと判定した場合にはS315:NO、CPU21は、S317の処理に移行する。S317において、CPU21は、インデックスカウントテーブル36の当該ビットインデックス部が記憶されているインデックス内容に対応するカウント値を読み出し、このカウント値に1加算して再度記憶した後、再度S311以降の処理を実行する。例えば、図15に示すように、うかきくふるに対応するビットがONに設定されたビットインデックス部が、インデックスカウントテーブル36のインデックス内容に初めて記憶された場合には、インデックス内容のうかきくふるに対応するカウント値に1が記憶される。また、インデックス内容のうかきくふるがインデックス内容に記憶されていた場合には、インデックス内容のうかきくふるに対応するカウント値の1がインクリメントされて2となる。他方、上記S311で、施設名データテーブル31の読みから全てのキーワードを順番に読み出してS312以降の処理を実行したと判定した場合にはS311:YES、CPU21は、S318の処理に移行する。S318において、CPU21は、上記S118で実行したインデックス統合処理のサブ処理を再度、実行後、S319の処理に移行する。[インデックス統合処理]ここで、インデックス統合処理のサブ処理について図5及び図16に基づいて説明する。尚、CPU21は、上記インデックスカウントテーブル33に替えて、図15に示すインデックスカウントテーブル36を用いてインデックス統合処理を実行する。図5に示すように、S211において、CPU21は、インデックスカウントテーブル36のインデックス内容に記憶されている全データについてS212以降の処理を実行したか否かを判定する判定処理を実行する。そして、インデックスカウントテーブル36のインデックス内容に記憶されている全データについてS212以降の処理を実行していないと判定した場合にはS211:NO、CPU21は、S212の処理に移行する。S212において、CPU21は、インデックスカウントテーブル36のインデックス内容に残っている6バイトの各データのうち、ONに設定されているビット数以下、文字数という。の多い方から次のインデックス内容と、このインデックス内容に対応する階乗個数及びカウント値とを読み出して、RAM22に記憶する。続いて、S213において、CPU21は、読み出した当該インデックス内容の文字数と階乗個数とが一致するか否か、つまり、ONに設定されているビット数と階乗個数とが一致するか否かを判定する判定処理を実行する。そして、読み出した当該インデックス内容の文字数と階乗個数とが一致すると判定した場合にはS213:YES、CPU21は、S214の処理に移行する。S214において、CPU21は、RAM22上に作成した統合カウントテーブル37図16参照のインデックス候補に当該インデックス内容の6バイトのビット配列を記憶すると共に、このインデックス候補に対応する階乗個数とカウント値に当該階乗個数と当該カウント値を記憶した後、再度S211以降の処理を実行する。ここで、RAM22上に作成された統合カウントテーブル37について図16に基づいて説明する。図16に示すように、統合カウントテーブル37は、階乗個数と、インデックス候補と、カウント値とから構成されている。従って、統合カウントテーブル37のインデックス候補には、格納形式3のビットインデックス部が記憶される。尚、図16においては、説明を簡単にするため、統合カウントテーブル37のインデックス候補に、6バイトのビット配列に替えて、ビットインデックス部のONに設定された各ビットに対応する文字種類を記載し、この文字種類に基づいてインデックス候補を説明する。一方、読み出した当該インデックス内容の文字数と階乗個数とが一致しないと判定した場合にはS213:NO、CPU21は、S215の処理に移行する。S215において、CPU21は、統合カウントテーブル37のインデックス候補の全データと当該インデックス内容との包含関係をチェックしたか否かを判定する判定処理を実行する。そして、統合カウントテーブル37のインデックス候補の全データと当該インデックス内容との包含関係をチェックして、当該インデックス内容の6バイトのビット配列を全て包含するインデックス候補が無かったと判定した場合にはS215:YES、CPU21は、上記S214の処理に移行する。S214において、CPU21は、当該インデックス内容の6バイトのビット配列を統合カウントテーブル34のインデックス候補に記憶すると共に、このインデックス候補に対応する階乗個数とカウント値に当該階乗個数と当該カウント値をそれぞれ記憶した後、再度S211以降の処理を実行する。例えば、図16に示すように、インデックスカウントテーブル36からインデックス内容として6バイトのビット配列うかきくふると、階乗個数として8、カウント値として2を読み出して、当該インデックス内容うかきくふるを全て包含するインデックス候補が無かったと判定した場合にはS215:YES、CPU21は、当該階乗個数8を統合カウントテーブル37の階乗個数に記憶する。また、CPU21は、当該インデックス内容としての6バイトのビット配列うかきくふると、当該カウント値2を統合カウントテーブル37のインデックス候補とカウント値にそれぞれ記憶する。一方、統合カウントテーブル37のインデックス候補の全データと当該インデックス内容との包含関係をチェックしていないと判定した場合にはS215:NO、CPU21は、S216の処理に移行する。S216において、統合カウントテーブル37から次のインデックス候補を読み出し、RAM22に記憶する。続いて、S217において、CPU21は、この次のインデックス候補の文字数が、当該インデックス内容に対応する当該階乗個数以下か否かを判定する判定処理を実行する。そして、この次のインデックス候補の文字数が、当該インデックス内容に対応する当該階乗個数よりも大きい、つまり、インデックス候補のONに設定された各ビットに対応する文字種類中での順番を示すことができるビット数が、当該階乗個数よりも大きいと判定した場合にはS217:NO、CPU21は、再度S215以降の処理を実行する。一方、この次のインデックス候補の文字数が、当該インデックス内容に対応する当該階乗個数以下である、つまり、インデックス候補のONに設定された各ビットに対応する文字種類中での順番を示すことができるビット数が、当該階乗個数以下であると判定した場合にはS217:YES、CPU21は、S218の処理に移行する。S218において、CPU21は、この次のインデックス候補の文字種類の中に当該インデックス内容の全ての文字種類が含まれる包含関係にあるか否か、つまり、インデックス候補のONに設定されたビットの中に、当該インデックス内容のONに設定されている各ビットが全て含まれる包含関係にあるか否かを判定する判定処理を実行する。そして、この次のインデックス候補の文字種類に当該インデックス内容の全ての文字種類が含まれていないと判定した場合にはS218:NO、CPU21は、再度S215以降の処理を実行する。一方、この次のインデックス候補の文字種類に当該インデックス内容の全ての文字種類が含まれる包含関係にあると判定した場合にはS218:YES、CPU21は、S219の処理に移行する。S219において、CPU21は、統合カウントテーブル37の当該インデックス候補に対応するカウント値を読み出し、インデックスカウントテーブル36の当該インデックス内容に対応するカウント値を加算して、再度、統合カウントテーブル37の当該インデックス候補に対応するカウント値に記憶した後、再度S211以降の処理を実行する。例えば、図15及び図16に示すように、統合カウントテーブル37のインデックス候補のうかきくふるの文字数6は、インデックスカウントテーブル36のインデックス内容うかきくふの階乗個数8以下であり、また、インデックス候補うかきくふるの文字種類の中にインデックス内容うかきくふの全ての文字種類が含まれる。従って、CPU21は、インデックス候補うかきくふるのカウント値2を読み出し、インデックスカウントテーブル36の当該インデックス内容うかきくふに対応するカウント値1を加算したカウント値3を統合カウントテーブル37の当該インデックス候補うかきくふるに対応するカウント値に記憶する。他方、上記S311で、インデックスカウントテーブル36のインデックス内容に記憶されている全データについてS312以降の処理を実行したと判定した場合、つまり、統合カウントテーブル37の作成を終了した場合にはS211:YES、CPU21は、当該サブ処理を終了して、ビットインデックス部テーブル作成処理のサブ処理に戻り、S319の処理に移行する。そして、図12に示すように、S319において、CPU21は、統合カウントテーブル37のインデックス候補に記憶されている全データについてS320以降の処理を実行したか否かを判定する判定処理を実行する。そして、統合カウントテーブル37のインデックス候補に記憶されている全データについてS320以降の処理を実行していないと判定した場合にはS319:NO、CPU21は、S320の処理に移行する。S320において、CPU21は、統合カウントテーブル37のインデックス候補に残っているデータから次のインデックス候補と、このインデックス候補に対応する階乗個数及びカウント値とを読み出して、RAM22に記憶する。尚、CPU21は、インデックス候補に残っているデータのうち、文字種類の少ない順、つまり、ONに設定されているビットの少ない順で、且つ、50音順に次のインデックス候補と、このインデックス候補に対応する階乗個数及びカウント値とを読み出して、RAM22に記憶するようにしてもよい。続いて、S321において、CPU21は、読み出したカウント値が2以上か否か、つまり、2回以上カウントされているか否かを判定する判定処理を実行する。そして、このカウント値が1の場合にはS321:NO、CPU21は、再度S319以降の処理を実行する。一方、このカウント値が2以上の場合にはS321:YES、CPU21は、当該インデックス候補は2つ以上の格納形式3の順列部に対して利用できる共有インデックス部であると判定し、S322の処理に移行する。S322において、CPU21は、RAM22上に作成した統合インデックスデータとしてのビットインデックス部テーブル38図17参照の統合インデックス部としてのインデックス内容に当該インデックス候補を記憶すると共に、このインデックス内容に対応する階乗個数に当該インデックス候補に対応する階乗個数を記憶する。そして、CPU21は、このインデックス内容に対応するビットインデックス部テーブル38のインデックスコードとしてのビットインデックス番号に、インデックス内容を識別する識別コードを記憶した後、再度S319以降の処理を実行する。例えば、識別コードとして、当該インデックス候補をインデックス内容に記憶した順番を表す番号を記憶する。ここで、RAM22上に作成されたビットインデックス部テーブル38について図17に基づいて説明する。図17に示すように、ビットインデックス部テーブル38は、階乗個数と、格納形式3のビットインデックス部を記憶するインデックス内容と、インデックス内容に記憶したビットインデックス部を識別する識別コードを記憶するビットインデックス番号とから構成されている。尚、図17においては、説明を簡単にするため、ビットインデックス部テーブル38のインデックス内容に、6バイトのビット配列に替えて、ビットインデックス部のONに設定された各ビットに対応する文字種類を記載している。従って、ビットインデックス部テーブル38のインデックス内容には、格納形式3のビットインデックス部のうち、2回以上使用されるビットインデックス部、又は、他のビットインデックス部の全ての文字種類を含んだビットインデックス部が記憶される。他方、上記S319で、統合カウントテーブル37のインデックス候補に記憶されている全データについてS320以降の処理を実行したと判定した場合、つまり、ビットインデックス部テーブル38の作成を終了した場合にはS319:YES、CPU21は、作成したビットインデックス部テーブル38を検索情報DB28に格納した後、当該サブ処理を終了してメインフローチャートに戻る。尚、CPU21は、ビットインデックス部テーブル38のインデックス内容を文字種類の少ない順、つまり、ONに設定されたビット数の少ない順で、且つ、50音順にソートした後、ビットインデックス番号に識別コードとして1から順番に番号を記憶した後、当該ビットインデックス部テーブル38を検索情報DB28に格納するようにしてもよい。[順列部テーブル作成処理]次に、順列部テーブル作成処理のサブ処理について図18乃至図21に基づいて説明する。図18に示すように、S411において、CPU21は、上記S111の処理を実行する。そして、施設名データテーブル31の読みから全てのキーワードを順番に読み出してS412以降の処理を実行していない、つまり、後述の順列部テーブル39図21参照を作成して検索情報DB28に格納していないと判定した場合にはS411:NO、CPU21は、S412の処理に移行する。S412において、CPU21は、上記S112の処理を実行する。そして、S413において、CPU21は、上記S113の処理を実行して、当該キーワードの文字列から順列部テーブル39に記憶する際の格納形式1乃至格納形式3のそれぞれのデータを作成し図6等参照、各格納形式1~3のデータサイズバイト数を算出する。続いて、S414において、CPU21は、上記S114の処理を実行する。そして、当該キーワードの文字列を順列部テーブル39に格納する格納形式2のデータサイズが、格納形式1及び格納形式3の各データサイズよりも少ないデータサイズであると判定した場合にはS414:YES、CPU21は、S415の処理に移行する。S415において、CPU21は、格納形式2の順列部作成処理のサブ処理図19参照を実行後、後述のS419の処理に移行する。一方、当該キーワードの文字列を順列部テーブル39に格納する格納形式2のデータサイズが、格納形式1及び格納形式3の各データサイズよりも少ないデータサイズでないと判定した場合にはS414:NO、CPU21は、S416の処理に移行する。S416において、CPU21は、上記S314の処理を実行する。そして、当該キーワードの文字列を順列部テーブル39に格納する格納形式3のデータサイズが、格納形式1及び格納形式2の各データサイズよりも少ないデータサイズであると判定した場合にはS416:YES、CPU21は、S417の処理に移行する。S417において、CPU21は、格納形式3の順列部作成処理のサブ処理図20参照を実行後、後述のS419の処理に移行する。一方、当該キーワードの文字列を順列部テーブル39に格納する格納形式3のデータサイズが、格納形式1及び格納形式2の各データサイズよりも少ないデータサイズでないと判定した場合にはS416:NO、CPU21は、S418の処理に移行する。S418において、CPU21は、上記S412で読み出したキーワードの文字列から、順列部テーブル39に記憶する際の格納形式1のデータを再度、作成する図6等参照。そして、CPU21は、この格納形式1のデータをRAM22上に作成した順列部テーブル39に記憶する。ここで、RAM22上に作成された順列部テーブル39について図21に基づいて説明する。図21に示すように、順列部テーブル39は、文字数、格納形式、インデックス番号、順列部、該当件数、次文字とから構成されている。この文字数には、キーワード検索語の文字数が記憶されている。また、格納形式には、キーワード検索語の文字列を順列部に記憶した格納形式が各格納形式1~3のうちのいずれであるかを表す各番号1~3が記憶される。また、インデックス番号には、キーワードの文字列から作成した格納形式2のデータの文字インデックス部が、文字インデックス部テーブル35のインデックス内容に記憶されていれば、このインデックス内容に対応する文字インデックス番号が記憶されている。また、キーワードの文字列から作成した格納形式2のデータの文字インデックス部が、文字インデックス部テーブル35のインデックス内容に記憶されていない場合には、格納形式2のデータの文字インデックス部が記憶されている。また、このインデックス番号には、格納形式3のデータのビットインデックス部が、ビットインデックス部テーブル38のインデックス内容に記憶されていれば、このインデックス内容に対応するビットインデックス番号が記憶されている。また、キーワードの文字列から作成した格納形式3のデータのビットインデックス部が、ビットインデックス部テーブル38のインデックス内容に記憶されていない場合には、格納形式3のデータのビットインデックス部が記憶されている。例えば、格納形式2のデータの文字インデックス部りをが、文字インデックス部テーブル35のインデックス内容に記憶されていない場合には、インデックス番号に、記憶されていない旨を表す0:と、この文字インデックス部りをが記憶されている。また、格納形式3のデータのビットインデックス部いうかきくしとよんが、ビットインデックス部テーブル38のインデックス内容に記憶されていない場合には、インデックス番号に、記憶されていない旨を表す0:と、このビットインデックス部いうかきくしとよんが記憶されている。尚、図21においては、説明を簡単にするため、順列部テーブル36のインデック番号に記憶される、ビットインデックス部の6バイトのビット配列に替えて、ビットインデックス部のONに設定された各ビットに対応する文字種類を記載している。また、順列部には、キーワード検索語の文字列から、格納形式に記憶された格納形式で作成したデータの順列部図6等参照が記憶されている。また、該当件数には、キーワード検索語と前方一致するキーワードを有する候補施設名の件数が記憶されている。尚、所定件数本実施例では、例えば、1万件である。よりも多い場合には、所定件数以上が記憶されている。また、次文字には、順列部に記憶されたキーワード検索語の文字列の次に選択して入力できる次文字が記憶されている。従って、図18及び図21に示すように、S418で、キーワードの文字列から作成した格納形式1のデータをRAM22上に作成した順列部テーブル39に記憶する場合には、CPU21は、この格納形式1のデータから、キーワードの文字列の文字数を1バイトで表した先頭の文字数を読み出し、順列部テーブル39の文字数に記憶する。また、CPU21は、この格納形式1のデータから、この文字列の各文字を1バイトの文字コードで表した順列部を読み出し、順列部テーブル39の当該文字数に対応する順列部に記憶する。また、CPU21は、順列テーブル39の当該文字数に対応する格納形式に、格納形式1のデータの順列部を記憶する旨を表す1を記憶する。従って、順列テーブル39の当該文字数に対応するインデックス番号には、データは記憶されない。続いて、S419において、CPU21は、施設名DB27に格納された施設名データテーブル31から、読みに記憶された施設名の読みを順番に読み出し、上記S412で読み出した当該キーワードと前方一致するキーワードを有する施設名の読みをカウントする。そして、CPU21は、このカウント値が所定件数以下本実施例では、例えば、1万件以下である。の場合には、このカウント値を当該キーワードと前方一致するキーワードを有する候補施設名の件数として、順列部テーブル39の順列部に記憶した最新の順列部に対応する該当件数に記憶する。また、CPU21は、このカウント値が所定件数よりも多い場合には、所定件数以上を順列部テーブル39の順列部に記憶した最新の順列部に対応する該当件数に記憶する。その後、S420において、CPU21は、施設名DB27に格納された施設名データテーブル31から、読みに記憶された施設名の読みを順番に読み出し、上記S412で読み出した当該キーワードと前方一致するキーワードを有する施設名の読みがある場合には、この前方一致するキーワードの文字列から当該キーワードの次の文字を抽出して、RAM22に記憶する。そして、CPU21は、この抽出した当該キーワードの次の文字を構成する50音の文字種類を、当該キーワードの文字列の次に選択して入力できる次文字として、順列部テーブル39の順列部に記憶した最新の順列部に対応する次文字に記憶した後、再度、S411以降の処理を実行する。他方、上記S411で、施設名データテーブル31の読みから全てのキーワードを順番に読み出してS412以降の処理を実行したと判定した場合、つまり、順列部テーブル39の作成を終了した場合にはS411:YES、CPU21は、作成した順列部テーブル39を検索情報DB28に格納した後、当該サブ処理を終了してメインフローチャートに戻り、当該処理を終了する。尚、CPU21は、順列テーブル39に記憶されたデータを文字数の少ない順にソートした後、検索情報DB28に格納するようにしてもよい。[格納形式2の順列部作成処理]次に、上記S415で実行する格納形式2の順列部作成処理のサブ処理について図19に基づいて説明する。図19に示すように、S511において、CPU21は、上記S412で読み出したキーワードの文字列から、順列部テーブル39に記憶する際の格納形式2のデータ図6等参照を再度、作成する。そして、CPU21は、この格納形式2のデータから文字インデックス部を読み出す。続いて、S512において、CPU21は、当該文字インデックス部が文字インデックス部テーブル35のインデックス内容に記憶されているか否かを判定する判定処理を実行する。そして、当該文字インデックス部が文字インデックス部テーブル35のインデックス内容に記憶されていると判定した場合にはS512:YES、CPU21は、S513の処理に移行する。S513において、CPU21は、文字インデックス部テーブル35から、当該文字インデックス部が記憶されているインデックス内容に対応する文字インデックス番号を読み出し、順列部テーブル39のインデックス番号に記憶した後、後述のS515の処理に移行する。一方、当該文字インデックス部が文字インデックス部テーブル35のインデックス内容に記憶されていないと判定した場合にはS512:NO、CPU21は、S514の処理に移行する。S514において、CPU21は、当該文字インデックス部が文字インデックス部テーブル35のインデックス内容に記憶されていない旨を表す0:と、当該キーワードの文字列を構成する各文字種類を1バイトの文字コードで表した当該文字インデックス部と、を順列部テーブル39のインデックス番号に記憶する。そして、S515において、当該キーワードの文字列から作成した格納形式2のデータからキーワードの文字列の文字数を1バイトで表した先頭の文字数を読み出し、順列部テーブル39の文字数に記憶する。また、CPU21は、この格納形式2のデータから、順列部を読み出し、順列部テーブル39の当該文字数に対応する順列部に記憶する。また、CPU21は、順列テーブル39の当該文字数に対応する格納形式に、格納形式2のデータの順列部を記憶する旨を表す2を記憶した後、当該サブ処理を終了して、順列部テーブル作成処理のサブ処理に戻り、S419の処理に移行する。[格納形式3の順列部作成処理]次に、上記S417で実行する格納形式3の順列部作成処理のサブ処理について図20に基づいて説明する。図20に示すように、S611において、CPU21は、上記S412で読み出したキーワードの文字列から、順列部テーブル39に記憶する際の格納形式3のデータ図6等参照を再度、作成する。そして、CPU21は、この格納形式3のデータからビットインデックス部を読み出す。続いて、S612において、CPU21は、当該ビットインデックス部がビットインデックス部テーブル38のインデックス内容に記憶されているか否かを判定する判定処理を実行する。そして、当該ビットインデックス部がビットインデックス部テーブル38のインデックス内容に記憶されていると判定した場合にはS612:YES、CPU21は、S613の処理に移行する。S613において、CPU21は、ビットインデックス部テーブル38から、当該ビットインデックス部が記憶されているインデックス内容に対応するビットインデックス番号を読み出し、順列部テーブル39のインデックス番号に記憶した後、後述のS615の処理に移行する。一方、当該ビットインデックス部がビットインデックス部テーブル38のインデックス内容に記憶されていないと判定した場合にはS612:NO、CPU21は、S614の処理に移行する。S614において、CPU21は、当該ビットインデックス部がビットインデックス部テーブル38のインデックス内容に記憶されていない旨を表す0:と、当該キーワードの文字列を構成する各文字種類に対応するビットをONに設定し、それ以外のビットをOFFに設定した6バイトの当該ビットインデックス部と、を順列部テーブル39のインデックス番号に記憶する。そして、S615において、当該キーワードの文字列から作成した格納形式3のデータからキーワードの文字列の文字数を1バイトで表した先頭の文字数を読み出し、順列部テーブル39の文字数に記憶する。また、CPU21は、この格納形式3のデータから、順列部を読み出し、順列部テーブル39の当該文字数に対応する順列部に記憶する。また、CPU21は、順列テーブル39の当該文字数に対応する格納形式に、格納形式3のデータの順列部を記憶する旨を表す3を記憶した後、当該サブ処理を終了して、順列部テーブル作成処理のサブ処理に戻り、S419の処理に移行する。[ナビゲーション装置での使用例]次に、ナビゲーション装置2が検索語入力画面81図28参照を介して検索語を入力された場合に、情報作成装置1からネットワーク4を介して配信された階乗個数テーブル32、文字インデックス部テーブル35、ビットインデックス部テーブル38、順列部テーブル39等を使用した一例について図22乃至図28に基づいて説明する。[ナビゲーション装置の概略構成]次に、ナビゲーション装置2の概略構成について図22を用いて説明する。図22は本実施例に係るナビゲーション装置2を示したブロック図である。図22に示すように、本実施例に係るナビゲーション装置2は、自車の現在位置以下、自車位置という。を検出する現在地検出処理部41と、各種のデータが記録されたデータ記録部42と、入力された情報に基づいて、各種の演算処理を行うナビゲーション制御部43と、操作者からの操作を受け付ける操作部44と、操作者に対して地図等の情報を表示する液晶ディスプレイLCD45と、経路案内に関する音声ガイダンスを出力するスピーカ46と、情報作成装置1や不図示の道路交通情報センタ等との間で携帯電話網等を介して通信を行う通信装置47とから構成されている。また、ナビゲーション制御部43には自車両の走行速度を検出する車速センサ48が接続されている。以下に、ナビゲーション装置2を構成する各構成要素について説明すると、現在地検出処理部41は、GPS61、方位センサ62、距離センサ63等からなり、自車位置、自車方位、走行距離等を検出することが可能となっている。また、データ記録部42は、外部記憶装置及び記憶媒体としてのハードディスク図示せずと、ハードディスクに記憶されたナビ側地図情報データベースナビ側地図情報DB51、ナビ側施設名データベースナビ側施設名DB53、ナビ側検索情報データベースナビ側検索情報DB54とを備えている。ナビ側地図情報DB51には、ナビゲーション装置2の走行案内や経路探索に使用されるナビ地図情報52が格納されている。また、ナビ側施設名DB53には、情報作成装置1からネットワーク4を介して配信された施設名データテーブル31等が格納されている。また、ナビ側検索情報DB54には、情報作成装置1からネットワーク4を介して配信された階乗個数テーブル32、文字インデックス部テーブル35、ビットインデックス部テーブル38、順列部テーブル39等が格納されている。ここで、ナビ地図情報52は、経路案内及び地図表示に必要な各種情報から構成されており、例えば、各新設道路を特定するための新設道路情報、地図を表示するための地図表示データ、各交差点に関する交差点データ、ノード点に関するノードデータ、道路リンクに関するリンクデータ、経路を探索するための探索データ、施設の一種である店舗等のPOIPointofInterestに関する施設データ、地点を検索するための検索データ等から構成されている。そして、ナビ側地図情報DB51の内容は、不図示の地図情報配信センタから通信装置47を介して配信された更新情報をダウンロードすることによって更新される。また、ナビ側施設名DB53に格納される施設名データテーブル31と、ナビ側検索情報DB54に格納される階乗個数テーブル32、文字インデックス部テーブル35、ビットインデックス部テーブル38、順列部テーブル39は、情報作成装置1から通信装置47を介して配信された更新情報をダウンロードすることによって更新される。また、図22に示すように、ナビゲーション装置2を構成するナビゲーション制御部43は、ナビゲーション装置2の全体の制御を行う演算装置及び制御装置としてのCPU71、並びにCPU71が各種の演算処理を行うに当たってワーキングメモリとして使用されるとともに、経路が探索されたときの経路データ等が記憶されるRAM72、制御用のプログラム等が記憶されたROM73、ROM73から読み出したプログラムを記憶するフラッシュメモリ74等の内部記憶装置や、時間を計測するタイマ75等を備えている。また、ROM73には、後述の入力された検索語に基づいて該当件数と検索語の次に選択することが可能な次文字を取得する検索補助情報取得処理図23~図25参照等のプログラムが記憶されている。更に、ナビゲーション制御部43には、操作部44、液晶ディスプレイ45、スピーカ46、通信装置47の各周辺装置アクチュエータが電気的に接続されている。この操作部44は、走行開始時の現在位置を修正し、案内開始地点としての出発地及び案内終了地点としての目的地を入力する際や施設に関する情報の検索を行う場合等に操作され、各種のキーや複数の操作スイッチから構成される。そして、ナビゲーション制御部43は、各スイッチの押下等により出力されるスイッチ信号に基づき、対応する各種の動作を実行すべく制御を行う。また、液晶ディスプレイ45には、現在走行中の地図情報、目的地周辺の地図情報、操作案内、操作メニュー、キーの案内、現在地から目的地までの推奨経路、推奨経路に沿った案内情報、交通情報、ニュース、天気予報、時刻、メール、テレビ番組等が表示される。また、スピーカ46は、ナビゲーション制御部43からの指示に基づいて、推奨経路に沿った走行を案内する音声ガイダンス等を出力する。ここで、案内される音声ガイダンスとしては、例えば、200m先、○○交差点を右方向です。等がある。また、通信装置47は、情報作成装置1や地図情報配信センタと通信を行う携帯電話網等による通信手段であり、更新情報や更新地図情報等の送受信を行う。また、通信装置47は地図情報配信センタに加えて、道路交通情報センタ等から送信された渋滞情報やサービスエリアの混雑状況等の各情報から成る交通情報を受信する。[検索補助情報取得処理]次に、上記のように構成されたナビゲーション装置1のCPU71が実行する処理であって、入力された検索語に基づいて該当件数と検索語の次に選択することが可能な次文字を取得する検索補助情報取得処理について図23乃至図28に基づいて説明する。尚、図23乃至図25にフローチャートで示されるプログラムは、操作部14の不図示の目的地設定ボタンが押下された場合に、CPU71により実行される。図23乃至図25に示すように、S711において、CPU71は、液晶ディスプレイ45の画面に、地点情報として目的地の住所や施設に関する名称等を検索するための検索語を入力する検索語入力画面81を表示する。ここで、検索語入力画面81の一例について図28に基づいて説明する。図28に示すように、検索語入力画面81には、50音キー82、入力文字表示部83、修正ボタン86、件数表示部87、戻るボタン88、完了ボタン89が表示される。この入力文字表示部83には、50音キー82によって入力された入力文字が表示される。また、修正ボタン86を押下する毎に、入力文字表示部83に表示されている文字列の最終入力文字を1文字ずつ削除することができる。また、戻るボタン88を押下することによって、検索語入力画面81の前の画面に戻すことができる。また、件数表示部87には、後述のように入力文字表示部83に表示される文字列と前方一致するキーワードを有する施設名の件数が表示される。更に、完了ボタン89を押下することによって、入力文字表示部83に表示されている文字列を検索語として、地点情報としての施設に関する名称等を検索してリスト表示するように指示することができる。続いて、図23に示すように、S712において、CPU71は、50音キー82から入力された入力文字を入力文字表示部83に表示すると共に、入力文字表示部83に表示している文字列を検索語としてRAM72に記憶する。そして、S713において、CPU71は、検索語をRAM72から読み出し、当該検索語の文字列の文字種類の種類数を算出し、当該検索語に対応させてRAM72に記憶する。例えば、検索語が7文字のかききかきききの場合には、CPU71は、検索語の文字列の文字種類がか、きから種類数2を算出し、当該検索語に対応させてRAM72に記憶する。続いて、S714において、CPU71は、文字インデックス番号取得処理のサブ処理を実行する。ここで、文字インデックス番号取得処理のサブ処理について図26に基づいて説明する。[文字インデックス番号取得処理]図26に示すように、S811において、CPU71は、当該検索語に対応させて記憶した文字種類の種類数をRAM72から読み出す。そして、CPU71は、この文字種類の種類数をナビ側検索情報DB54に格納された階乗個数テーブル32の文字の種類として、この文字の種類に対応する階乗個数を読み出し、RAM72に記憶する。例えば、種類数が2の場合には、CPU71は、階乗個数テーブル32の文字の種類2に対応する階乗個数として2を読み出し、RAM72に記憶する。そして、S812において、CPU71は、上記S811で記憶した階乗個数をナビ側検索情報DB54に格納された文字インデックス部テーブル35の階乗個数として、この階乗個数に対応するインデックス内容と文字インデックス番号とを文字インデックス部テーブル35から全て読み出して、それぞれ対応させてRAM72に記憶する。例えば、上記S811で記憶した階乗個数が2の場合には、文字インデックス部テーブル35の階乗個数が2のインデックス内容のかき、かく、と文字インデックス番号の1、2、とを全て読み出して、それぞれ対応させてRAM72に記憶する。続いて、S813において、CPU71は、RAM72に記憶したインデックス内容から全ての文字種類の組み合わせ、つまり、全ての1バイトの文字コードの組み合わせを順番に読み出してS814以降の処理を実行したか否かを判定する判定処理を実行する。そして、RAM72に記憶したインデックス内容から全ての文字種類の組み合わせを順番に読み出してS814以降の処理を実行していないと判定した場合にはS813:NO、CPU71は、S814の処理に移行する。S814において、CPU71は、RAM72に記憶したインデックス内容から残っている次の文字種類の組み合わせを読み出して、RAM72に記憶する。続いて、S815において、CPU71は、当該検索語の文字種類をRAM72から読み出し、インデックス内容から読み出した次の文字種類が、当該検索語の文字種類を全て含むか否かを判定する判定処理を実行する。そして、インデックス内容から読み出した次の文字種類が、当該検索語の文字種類を全て含むと判定した場合にはS815:YES、CPU71は、S816の処理に移行する。S816において、CPU71は、このインデックス内容に対応してRAM72に記憶した文字インデックス番号の識別コードを順列部テーブル39のインデックス番号としてRAM72に記憶する。また、CPU71は、文字インデックス番号フラグをRAM72から読み出し、この文字インデックス番号フラグをONに設定して、再度RAM72に記憶した後、当該サブ処理を終了してメインフローチャートに戻り、S715の処理に移行する。尚、ナビゲーション装置2の起動時には、文字インデックス番号フラグは、OFFに設定されてRAM72に記憶されている。一方、インデックス内容から読み出した次の文字種類が、当該検索語の文字種類を全て含んでいないと判定した場合にはS815:NO、CPU71は、再度S813以降の処理を実行する。そして、S813において、RAM72に記憶したインデックス内容から全ての文字種類の組み合わせを順番に読み出してS814以降の処理を実行したと判定した場合にはS813:YES、CPU71は、S817の処理に移行する。S817において、CPU71は、ナビ側検索情報DB54に格納されている文字インデックス部テーブル35には、当該検索語の文字列に対応する文字インデックス番号の識別コードが無い旨を記憶する。つまり、CPU71は、文字インデックス番号フラグをRAM72から読み出し、この文字インデックス番号フラグをOFFに設定して、再度RAM72に記憶した後、当該サブ処理を終了してメインフローチャートに戻り、S715の処理に移行する。続いて、図23に示すように、S715において、CPU71は、ビットインデックス番号取得処理のサブ処理を実行する。ここで、ビットインデックス番号取得処理のサブ処理について図27に基づいて説明する。[ビットインデックス番号取得処理]図27に示すように、S911において、CPU71は、当該検索語に対応させて記憶した文字種類の種類数をRAM72から読み出す。そして、CPU71は、この文字種類の種類数をナビ側検索情報DB54に格納された階乗個数テーブル32の文字の種類として、この文字の種類に対応する階乗個数を読み出し、RAM72に記憶する。例えば、種類数が6の場合には、CPU71は、階乗個数テーブル32の文字の種類6に対応する階乗個数として8を読み出し、RAM72に記憶する。そして、S912において、CPU71は、上記S911で記憶した階乗個数をナビ側検索情報DB54に格納されたビットインデックス部テーブル38の階乗個数として、この階乗個数に対応するインデックス内容の6バイトのビット配列とビットインデックス番号とをビットインデックス部テーブル38から全て読み出して、それぞれ対応させてRAM72に記憶する。例えば、上記S911で記憶した階乗個数が8の場合には、ビットインデックス部テーブル38の階乗個数が8のインデックス内容のうかきくふる、とビットインデックス番号の1、とを読み出して、それぞれ対応させてRAM72に記憶する。続いて、S913において、CPU71は、RAM72に記憶したインデックス内容から全ての文字種類の組み合わせ、つまり、全ての6バイトのビット配列を順番に読み出してS914以降の処理を実行したか否かを判定する判定処理を実行する。そして、RAM72に記憶したインデックス内容から全ての文字種類の組み合わせを順番に読み出してS914以降の処理を実行していないと判定した場合にはS913:NO、CPU71は、S914の処理に移行する。S914において、CPU71は、RAM72に記憶したインデックス内容から残っている次の文字種類の組み合わせ、つまり、次の6バイトのビット配列を読み出して、RAM72に記憶する。続いて、S915において、CPU71は、当該検索語の文字種類をRAM72から読み出し、インデックス内容から読み出した次の文字種類が、当該検索語の文字種類を全て含むか否か、つまり、当該検索語の文字種類に対応する全ビットがONに設定されているか否かを判定する判定処理を実行する。そして、インデックス内容から読み出した次の文字種類が、当該検索語の文字種類を全て含む、つまり、当該検索語の文字種類に対応する全ビットがONに設定されていると判定した場合にはS915:YES、CPU71は、S916の処理に移行する。S916において、CPU71は、このインデックス内容に対応してRAM72に記憶したビットインデックス番号の識別コードを順列部テーブル39のインデックス番号としてRAM72に記憶する。また、CPU71は、ビットインデックス番号フラグをRAM72から読み出し、このビットインデックス番号フラグをONに設定して、再度RAM72に記憶した後、当該サブ処理を終了してメインフローチャートに戻り、S716の処理に移行する。尚、ナビゲーション装置2の起動時には、ビットインデックス番号フラグは、OFFに設定されてRAM72に記憶されている。一方、インデックス内容から読み出した次の文字種類が、当該検索語の文字種類を全て含んでいない、つまり、当該検索語の文字種類に対応する全ビットがONに設定されていないと判定した場合にはS915:NO、CPU71は、再度S913以降の処理を実行する。そして、S913において、RAM72に記憶したインデックス内容から全ての文字種類の組み合わせ、つまり、全ての6バイトのビット配列を順番に読み出してS914以降の処理を実行したと判定した場合にはS913:YES、CPU71は、S917の処理に移行する。S917において、CPU71は、ナビ側検索情報DB54に格納されているビットインデックス部テーブル38には、当該検索語の文字列に対応するビットインデックス番号の識別コードが無い旨を記憶する。つまり、CPU71は、ビットインデックス番号フラグをRAM72から読み出し、このビットインデックス番号フラグをOFFに設定して、再度RAM72に記憶した後、当該サブ処理を終了してメインフローチャートに戻り、S716の処理に移行する。続いて、図23に示すように、S716において、CPU71は、RAM72から当該検索語を読み出し、文字数をカウントする。そして、S717において、CPU71は、ナビ側検索情報DB54に格納した順列部テーブル39から、当該検索語の文字数のカウント値が記憶されている文字数に対応する格納形式、インデックス番号、順列部、該当件数、次文字の各データを1組のデータとして順番に読み出し、各組毎に相互に対応させてRAM72に記憶する。そして、S718において、CPU71は、当該検索語の文字列を順列テーブル39に記憶する際の格納形式1乃至格納形式3のそれぞれで表した場合について図6等参照、各格納形式1~3のデータサイズバイト数を算出する。続いて、S719において、CPU71は、当該検索語の文字列を順列テーブル39に記憶する格納形式2のデータサイズが、格納形式1及び格納形式3の各データサイズよりも少ないデータサイズか否かを判定する判定処理を実行する。そして、当該キーワードの文字列を順列部テーブル39に格納する格納形式2のデータサイズが、格納形式1及び格納形式3の各データサイズよりも少ないデータサイズでないと判定した場合にはS719:NO、CPU71は、S720の処理に移行する。S720において、CPU71は、当該検索語の文字列を順列テーブル39に記憶する格納形式3のデータサイズが、格納形式1及び格納形式2の各データサイズよりも少ないデータサイズか否かを判定する判定処理を実行する。そして、当該検索語の文字列を順列部テーブル39に格納する格納形式3のデータサイズが、格納形式1及び格納形式2の各データサイズよりも少ないデータサイズでないと判定した場合にはS720:NO、CPU71は、S721の処理に移行する。S721において、CPU71は、上記S717でRAMに記憶した当該検索語の文字数のカウント値が記憶されている文字数に対応する各順列部のうちに、当該検索語の文字列の各文字を1バイトの文字コードで表した格納形式1の順列部と一致するものがあるか否かを判定する判定処理を実行する。そして、上記S717でRAMに記憶した当該検索語の文字数のカウント値が記憶されている文字数に対応する各順列部のうちに、当該検索語の文字列の各文字を1バイトの文字コードで表した格納形式1の順列部と一致するものがあると判定した場合にはS721:YES、CPU71は、S722の処理に移行する。S722において、CPU71は、当該検索語の文字列の各文字を1バイトの文字コードで表した格納形式1の順列部と一致する順列部に対応付けて記憶されている該当件数と次文字の各データをRAM72から読み出す。続いて、S723において、CPU71は、この読み出した該当件数を検索語入力画面81の件数表示部87に表示する。また、CPU71は、この読み出した次文字のデータに該当しない50音の文字を検索語の次に入力できない文字として抽出する。そして、CPU71は、これら入力できない文字に対応する50音キー82の文字ボタンの枠や枠内の文字を灰色等や透明度を高くし、通常表示状態よりトーンダウンして表示後、当該処理を終了する。一方、上記S717でRAMに記憶した当該検索語の文字数のカウント値が記憶されている文字数に対応する各順列部のうちに、当該検索語の文字列の各文字を1バイトの文字コードで表した格納形式1の順列部と一致するものが無いと判定した場合にはS721:NO、CPU71は、検索語入力画面81の件数表示部87に、候補施設名が無い旨を表す該当件数:無しを表示した後、当該処理を終了する。[格納形式2の場合]他方、上記S719で、CPU71は、当該検索語の文字列を順列部テーブル39に格納する格納形式2のデータサイズが、格納形式1及び格納形式3の各データサイズよりも少ないデータサイズであると判定した場合にはS719:YES、CPU21は、S724の処理に移行する。図24に示すように、S724において、CPU71は、文字インデックス番号の識別コードを順列部テーブル39のインデックス番号としてRAM72に記憶しているか否かを判定する判定処理を実行する。具体的には、CPU71は、文字インデックス番号フラグをRAM72から読み出し、ONに設定されているか否かを判定する判定処理を実行する。そして、文字インデックス番号の識別コードを順列部テーブル39のインデックス番号としてRAM72に記憶していると判定した場合、つまり、文字インデックス番号フラグがONに設定されていると判定した場合にはS724:YES、CPU71は、S725の処理に移行する。S725において、CPU71は、上記717でRAMに記憶した格納形式が2に対応するインデックス番号に、当該文字インデックス番号の識別コードが記憶されているか否かを判定する判定処理を実行する。そして、上記717でRAMに記憶した格納形式が2に対応するインデックス番号に、当該文字インデックス番号の識別コードが記憶されていないと判定した場合にはS725:NO、CPU71は、検索語入力画面81の件数表示部87に、候補施設名が無い旨を表す該当件数:無しを表示した後、当該処理を終了する。一方、上記717でRAMに記憶した格納形式が2に対応するインデックス番号に、当該文字インデックス番号の識別コードが記憶されていると判定した場合にはS725:YES、CPU71は、後述のS727の処理に移行する。他方、文字インデックス番号の識別コードを順列部テーブル39のインデックス番号としてRAM72に記憶していないと判定した場合、つまり、文字インデックス番号フラグがOFFに設定されていると判定した場合にはS724:NO、CPU71は、S726の処理に移行する。S726において、CPU71は、当該検索語の文字列から格納形式2の文字インデックス部を作成した後、S725の処理に移行する。つまり、CPU71は、当該検索語の文字列を構成する各文字種類を1バイトの文字コードで表した文字インデックス部を作成した後、S725の処理に移行する。続いて、S725において、CPU71は、上記717でRAMに記憶した格納形式が2に対応するインデックス番号に、当該検索語の文字列から作成した格納形式2の文字インデックス部が記憶されているか否かを判定する判定処理を実行する。そして、上記717でRAMに記憶した格納形式が2に対応するインデックス番号に、当該検索語の文字列から作成した格納形式2の文字インデックス部が記憶されていないと判定した場合にはS725:NO、CPU71は、検索語入力画面81の件数表示部87に、候補施設名が無い旨を表す該当件数:無しを表示した後、当該処理を終了する。一方、上記717でRAMに記憶した格納形式が2に対応するインデックス番号に、当該検索語の文字列から作成した格納形式2の文字インデックス部が記憶されていると判定した場合にはS725:YES、CPU71は、S727の処理に移行する。S727において、CPU71は、当該検索語の文字列から格納形式2の順列部を作成する。つまり、CPU71は、検索語の文字列の各文字を、格納形式2の文字インデックス部を構成する文字種類中での順番を示すことができるビット数の数値で各文字の順番を表した順列部を作成してRAM72に記憶する。続いて、S728において、CPU71は、上記S717でRAMに記憶した格納形式が2に対応するインデックス番号のうち、当該文字インデックス番号の識別コード、又は、当該検索語の文字列から作成した格納形式2の文字インデックス部が記憶されているインデックス番号に対応する全ての順列部についてS729以降の処理を実行したか否かを判定する判定処理を実行する。そして、当該文字インデックス番号の識別コード、又は、当該検索語の文字列から作成した格納形式2の文字インデックス部が記憶されているインデックス番号に対応する全ての順列部についてS729以降の処理を実行したと判定した場合にはS728:YES、CPU71は、検索語入力画面81の件数表示部87に、候補施設名が無い旨を表す該当件数:無しを表示した後、当該処理を終了する。一方、当該文字インデックス番号の識別コード、又は、当該検索語の文字列から作成した格納形式2の文字インデックス部が記憶されているインデックス番号に対応する全ての順列部についてS729以降の処理を実行していないと判定した場合にはS728:NO、CPU71は、S729の処理に移行する。S729において、CPU71は、当該文字インデックス番号の識別コード、又は、当該検索語の文字列から作成した格納形式2の文字インデックス部が記憶されているインデックス番号に対応する全ての順列部のうち、残っている次の順列部を読み出す。続いて、S730において、CPU71は、この読み出した順列部と上記S727で検索語の文字列から作成した順列部とが一致するか否かを判定する判定処理を実行する。そして、この読み出した順列部と上記S727で検索語の文字列から作成した順列部とが一致していないと判定した場合にはS730:NO、CPU71は、再度S728以降の処理を実行する。一方、この読み出した順列部と上記S727で検索語の文字列から作成した順列部とが一致すると判定した場合にはS730:YES、CPU71は、S731の処理に移行する。S731において、CPU71は、上記S717で記憶した格納形式、インデックス番号、順列部、該当件数、次文字の各データから、この読み出した順列部に対応付けて記憶されている該当件数と次文字の各データをRAM72から読み出す。そして、S732において、CPU71は、上記S723の処理を実行した後、当該処理を終了する。例えば、図28に示すよう、検索語入力画面81において、かかかかの検索語が入力された場合には、CPU71は、検索語かかかかの格納形式2のデータサイズが、格納形式1及び格納形式3のデータサイズよりも小さいため図6参照、文字インデックス部テーブル35から文字インデックス番号1を取得する。そして、CPU71は、順列部テーブル39から検索語かかかかの文字数4に対応する格納形式、インデックス番号、順列部、該当件数、次文字の各データを1組のデータとして順番に読み出し、各組毎に相互に対応させてRAM72に記憶する。そして、CPU71は、格納形式が2で、且つ、インデックス番号に1が記憶され、1バイトの11110000のデータが記憶されている順列部図6参照に対応する該当件数の101件、次文字のあ、え、お、図21参照を読み出す。そして、CPU71は、検索語入力画面81の件数表示部87に101件を表示する。また、CPU71は、次文字のあ、え、お、以外の入力できない文字に対応する50音キー82の文字ボタンの枠や枠内の文字を灰色等や透明度を高くし、通常表示状態よりトーンダウンして表示する。[格納形式3の場合]また他方、上記S720で、CPU71は、当該検索語の文字列を順列部テーブル39に格納する格納形式3のデータサイズが、格納形式1及び格納形式2の各データサイズよりも少ないデータサイズであると判定した場合にはS720:YES、CPU21は、S733の処理に移行する。図25に示すように、S733において、CPU71は、ビットインデックス番号の識別コードを順列部テーブル39のインデックス番号としてRAM72に記憶しているか否かを判定する判定処理を実行する。具体的には、CPU71は、ビットインデックス番号フラグをRAM72から読み出し、ONに設定されているか否かを判定する判定処理を実行する。そして、ビットインデックス番号の識別コードを順列部テーブル39のインデックス番号としてRAM72に記憶していると判定した場合、つまり、ビットインデックス番号フラグがONに設定されていると判定した場合にはS733:YES、CPU71は、S734の処理に移行する。S734において、CPU71は、上記717でRAMに記憶した格納形式が3に対応するインデックス番号に、当該ビットインデックス番号の識別コードが記憶されているか否かを判定する判定処理を実行する。そして、上記717でRAMに記憶した格納形式が3に対応するインデックス番号に、当該ビットインデックス番号の識別コードが記憶されていないと判定した場合にはS734:NO、CPU71は、検索語入力画面81の件数表示部87に、候補施設名が無い旨を表す該当件数:無しを表示した後、当該処理を終了する。一方、上記717でRAMに記憶した格納形式が3に対応するインデックス番号に、当該ビットインデックス番号の識別コードが記憶されていると判定した場合にはS734:YES、CPU71は、後述のS736の処理に移行する。他方、上記S733で、ビットインデックス番号の識別コードを順列部テーブル39のインデックス番号としてRAM72に記憶していないと判定した場合、つまり、ビットインデックス番号フラグがOFFに設定されていると判定した場合にはS733:NO、CPU71は、S735の処理に移行する。S735において、CPU71は、当該検索語の文字列から格納形式3のビットインデックス部を作成した後、S734の処理に移行する。つまり、CPU71は、当該検索語の読みに用いる全文字種類50音では、あ、い、う、、んの仮名である。に対応するビット配列を有する固定バイト数50音では、6バイトである。で構成され、検索語の文字列を構成する文字種類に対応するビットをONに設定し、それ以外のビットをOFFに設定したビットインデックス部を作成した後、S734の処理に移行する。続いて、S734において、CPU71は、上記717でRAMに記憶した格納形式が3に対応するインデックス番号に、当該検索語の文字列から作成した格納形式3のビットインデックス部が記憶されているか否かを判定する判定処理を実行する。そして、上記717でRAMに記憶した格納形式が3に対応するインデックス番号に、当該検索語の文字列から作成した格納形式3のビットインデックス部が記憶されていないと判定した場合にはS734:NO、CPU71は、検索語入力画面81の件数表示部87に、候補施設名が無い旨を表す該当件数:無しを表示した後、当該処理を終了する。一方、上記717でRAMに記憶した格納形式が3に対応するインデックス番号に、当該検索語の文字列から作成した格納形式3のビットインデックス部が記憶されていると判定した場合にはS734:YES、CPU71は、S736の処理に移行する。S736において、CPU71は、当該検索語の文字列から格納形式3の順列部を作成する。つまり、CPU71は、検索語の文字列の各文字を、格納形式3のビットインデックス部でONに設定された文字種類中での順番を示すことができるビット数の数値で各文字の順番を表した順列部を作成してRAM72に記憶する。続いて、S737において、CPU71は、上記S717でRAMに記憶した格納形式が3に対応するインデックス番号のうち、当該ビットインデックス番号の識別コード、又は、当該検索語の文字列から作成した格納形式3のビットインデックス部が記憶されているインデックス番号に対応する全ての順列部についてS738以降の処理を実行したか否かを判定する判定処理を実行する。そして、当該ビットインデックス番号の識別コード、又は、当該検索語の文字列から作成した格納形式3のビットインデックス部が記憶されているインデックス番号に対応する全ての順列部についてS738以降の処理を実行したと判定した場合にはS737:YES、CPU71は、検索語入力画面81の件数表示部87に、候補施設名が無い旨を表す該当件数:無しを表示した後、当該処理を終了する。一方、当該ビットインデックス番号の識別コード、又は、当該検索語の文字列から作成した格納形式3のビットインデックス部が記憶されているインデックス番号に対応する全ての順列部についてS738以降の処理を実行していないと判定した場合にはS737:NO、CPU71は、S738の処理に移行する。S738において、CPU71は、当該ビットインデックス番号の識別コード、又は、当該検索語の文字列から作成した格納形式3のビットインデックス部が記憶されているインデックス番号に対応する全ての順列部のうち、残っている次の順列部を読み出す。続いて、S739において、CPU71は、この読み出した順列部と上記S736で検索語の文字列から作成した順列部とが一致するか否かを判定する判定処理を実行する。そして、この読み出した順列部と上記S736で検索語の文字列から作成した順列部とが一致していないと判定した場合にはS739:NO、CPU71は、再度S737以降の処理を実行する。一方、この読み出した順列部と上記S736で検索語の文字列から作成した順列部とが一致すると判定した場合にはS739:YES、CPU71は、S740の処理に移行する。S740において、CPU71は、上記S717で記憶した格納形式、インデックス番号、順列部、該当件数、次文字の各データから、この読み出した順列部に対応付けて記憶されている該当件数と次文字の各データをRAM72から読み出す。そして、S741において、CPU71は、上記S723の処理を実行した後、当該処理を終了する。以上詳細に説明した通り、本実施例に係る情報作成装置1では、CPU21は、キーワードの文字列を順列部テーブル39に記憶する際の格納形式1乃至格納形式3のそれぞれで表した場合について、各格納形式1~3のデータサイズバイト数を算出する。そして、CPU21は、キーワードの文字列を順列部テーブル39に記憶する際の格納形式2又は格納形式3のデータサイズが、キーワードの文字列の文字数を1バイトで表した文字数と、この文字列の各文字を1バイトの文字コードで表した順列部とから構成した格納形式1のデータサイズよりも少ない場合には、キーワードの文字列を格納形式2又は格納形式3で順列部テーブル39に記憶する。これにより、キーワードの文字列の各文字を1バイトの文字コードで記憶する格納形式1だけでなく、キーワードの文字列を格納形式2又は格納形式3で順列部テーブル39に記憶することが可能となり、検索対象となるキーワードの文字列を順列部に記憶する順列部テーブル39のデータサイズを大幅に削減して、検索情報DB28のメモリ容量の増大を抑止することが可能となる。従って、ナビゲーション装置2のCPU71が、順列部テーブル39等を格納するナビ側検索情報DB54のメモリ容量の増大も抑止することが可能となる。また、ナビゲーション装置2のCPU71が、ナビ側検索情報DB54に格納した順列部テーブル39から検索語の文字数に対応する全データを抽出して、展開するために必要なRAM72のメモリ容量の増大も抑止することが可能となる。また、キーワードの文字列を順列部テーブル39に記憶する際の格納形式2の文字インデックス部のデータサイズが、格納形式3のビットインデックス部のデータサイズ以下場合には、CPU21は、当該キーワードの文字列を順列部テーブル39に記憶する形式を格納形式2に設定する。これにより、CPU21は、文字インデックス部テーブル35を迅速に作成することができると共に、文字インデックス部テーブル35のデータサイズの削減化を図り、検索情報DB28のメモリ容量の増大を抑止することが可能となる。また、キーワードの文字列を順列部テーブル39に記憶する際の格納形式2の文字インデックス部のデータサイズが、格納形式3のビットインデックス部のデータサイズより大きい場合には、CPU21は、当該キーワードの文字列を順列部テーブル39に記憶する形式を格納形式3に設定する。これにより、CPU21は、ビットインデックス部はキーワードの読みに用いる全文字種類50音では、あ、い、う、、んの仮名である。に対応するビット配列を有する固定バイト数50音では、6バイトである。で構成されるため、ビットインデックス部テーブル38のデータサイズの削減化を図り、検索情報DB28のメモリ容量の増大を抑止することが可能となる。また、上記S218において、一方のインデックス候補の文字種類の全てが他方のインデックス候補の文字種類に含まれる場合には、この一方のインデックス候補に替えて当該他方のインデックス候補を抽出して文字インデックス部テーブル35又はビットインデックス部テーブル38を作成するため、各テーブル35、38のデータサイズの更なる削減化を図り、検索情報DB28のメモリ容量の増大を抑止することが可能となる。従って、ナビゲーション装置2のCPU71が、文字インデックス部テーブル35、ビットインデックス部テーブル38等を格納するナビ側検索情報DB54のメモリ容量の増大も更に抑止することが可能となる。また、ナビゲーション装置2のCPU71が、ナビ側検索情報DB54に格納した各テーブル35、38から検索語の文字数に対応する階乗個数の全データを抽出して、展開するために必要なRAM72のメモリ容量の増大も抑止することが可能となる。尚、本発明は前記実施例に限定されるものではなく、本発明の要旨を逸脱しない範囲内で種々の改良、変形が可能であることは勿論である。例えば、以下のようにしてもよい。[他の実施例1]A例えば、上記S118のサブ処理を実行せず、統合カウントテーブル34を作成しないようにしてもよい。そして、上記S120において、統合カウントテーブル34のインデックス候補に替えて、インデックスカウントテーブル33のインデックス内容を用い、統合カウントテーブル34のカウント値に替えて、インデックスカウントテーブル33のカウント値を用いて、共有インデックスデータとしての文字インデックス部テーブル35を作成するようにしてもよい。そして、文字インデックス部テーブル35のインデックスコードとしての文字インデックス番号に、インデックス内容を識別する識別コードを記憶した後、再度S119以降の処理を実行するようにしてもよい。また、上記S318のサブ処理を実行せず、統合カウントテーブル37を作成しないようにしてもよい。そして、上記S320において、統合カウントテーブル37のインデックス候補に替えて、インデックスカウントテーブル36のインデックス内容を用い、統合カウントテーブル38のカウント値に替えて、インデックスカウントテーブル36のカウント値を用いて、共有インデックスデータとしてのビットインデックス部テーブル38を作成するようにしてもよい。そして、ビットインデックス部テーブル38のインデックスコードとしてのビットインデックス番号に、インデックス内容を識別する識別コードを記憶した後、再度S319以降の処理を実行するようにしてもよい。これにより、文字インデックス部テーブル35とビットインデックス部テーブル38を迅速に作成することができると共に、順列部テーブル39を迅速に作成することができる。また、キーワードの文字列の各文字を1バイトの文字コードで記憶する格納形式1だけでなく、キーワードの文字列を格納形式2又は格納形式3で順列部テーブル39に記憶することが可能となり、検索対象となるキーワードの文字列を順列部に記憶する順列部テーブル39のデータサイズを大幅に削減して、検索情報DB28のメモリ容量の増大を抑止することが可能となる。従って、ナビゲーション装置2のCPU71が、順列部テーブル39等を格納するナビ側検索情報DB54のメモリ容量の増大も抑止することが可能となる。また、ナビゲーション装置2のCPU71が、ナビ側検索情報DB54に格納した順列部テーブル39から検索語の文字数に対応する全データを抽出して、展開するために必要なRAM72のメモリ容量の増大も抑止することが可能となる。[他の実施例2]Bまた、文字インデックス部テーブル35又はビットインデックス部テーブル38の一方だけを作成するようにしてもよい。そして、検索対象となるキーワードの文字列を順列部テーブル39に記憶する際の格納形式を格納形式1及び格納形式2、又は、格納形式1及び格納形式3にするようにしてもよい。これにより、検索対象となるキーワードの文字列を順列部テーブル39に記憶する際の格納形式を格納形式1のみにした場合よりも、順列部テーブル39のデータサイズを削減して、検索情報DB28のメモリ容量の増大を抑止することが可能となる。従って、ナビゲーション装置2のCPU71が、順列部テーブル39等を格納するナビ側検索情報DB54のメモリ容量の増大も抑止することが可能となる。また、ナビゲーション装置2のCPU71が、ナビ側検索情報DB54に格納した順列部テーブル39から検索語の文字数に対応する全データを抽出して、展開するために必要なRAM72のメモリ容量の増大も抑止することが可能となる。