(57)【要約】【課題】未整列のデータから、必要とする順位数までの順位付け結果を高速に算出する順位付け装置、順位付け方法及びプログラムを提供する。【解決手段】複数のデータが未整列である未整列データに対し、予め指定された数までの順位付けを行い、整列させる順位付け装置であって、未整列データを構成する各データに対し、所定の基準値より大きいかどうかの判別を行うデータ判別部と、判別の結果、基準値より大きいデータのみを予め指定された数分一時的に記憶する一時記憶部と、一時記憶部に記憶されたデータを順位付け、整列させるデータ整列部と、データ整列部により整列させられたデータを記憶する仮整列結果記憶部と、を有する。【選択図】図１
2010092088.tif 000002
【特許請求の範囲】
【請求項１】
複数のデータが未整列である未整列データに対し、予め指定された数までの順位付けを行い、整列させる順位付け装置であって、
前記未整列データを構成する各データに対し、所定の基準値より大きいかどうかの判別を行うデータ判別部と、
前記判別の結果、前記基準値より大きいデータのみを前記予め指定された数分一時的に記憶する一時記憶部と、
前記一時記憶部に記憶されたデータを順位付け、整列させるデータ整列部と、
前記データ整列部により整列させられたデータを記憶する仮整列結果記憶部と、
を有することを特徴とする順位付け装置。
【請求項２】
前記データ整列部により整列させられたデータが前記仮整列結果記憶部に記憶されると、前記一時記憶部は初期化されることを特徴とする請求項１記載の順位付け装置。
【請求項３】
前記未整列データを構成するデータのうち、前記データ判別部による判別が行われていない未処理データがある場合、
前記データ整列部は、
前記仮整列結果記憶部に記憶されたデータのうち、最後尾のデータを前記基準値として新たに設定し、
前記データ判別部は、
前記未処理データを構成する各データに対し、前記新たに設定された基準値より大きいかどうかの判別を行うことを特徴とする請求項１又は２記載の順位付け装置。
【請求項４】
前記データ判別部による判別が、前記未整列データを構成する複数のデータの全てに対して行われた場合、
前記データ整列部は、
前記一時記憶部と前記仮整列結果記憶部に記憶されているデータを結合して、順位付け、整列させることを特徴とする請求項１から３のいずれか１項に記載の順位付け装置。
【請求項５】
前記仮整列結果記憶部に記憶されたデータ数が前記予め指定された数未満ではない場合、前記仮整列結果記憶部に記憶されたデータは、順位付け結果を示す順位付けデータとして出力されることを特徴とする請求項１から４のいずれか１項に記載の順位付け装置。
【請求項６】
複数のデータが未整列である未整列データに対し、予め指定された数までの順位付けを行い、整列させる順位付け方法であって、
前記未整列データを構成する各データに対し、所定の基準値より大きいかどうかの判別を行うデータ判別ステップと、
前記判別の結果、前記基準値より大きいデータのみを前記予め指定された数分一時的に記憶する一時記憶ステップと、
前記一時記憶ステップで記憶されたデータを順位付け、整列させるデータ整列ステップと、
前記データ整列ステップにより整列させられたデータを記憶する仮整列結果記憶ステップと、
を有することを特徴とする順位付け方法。
【請求項７】
前記データ整列ステップにより整列させられたデータが前記仮整列結果記憶ステップで記憶された場合、
前記一時記憶ステップで記憶されたデータを初期化する初期化ステップを有することを特徴とする請求項６記載の順位付け方法。
【請求項８】
前記未整列データを構成するデータのうち、前記データ判別ステップによる判別が行われていない未処理データがある場合、
前記仮整列結果記憶ステップで記憶されたデータのうち、最後尾のデータを前記基準値として新たに設定する基準値設定ステップを有し、
前記データ判別ステップでは、
前記未処理データを構成する各データに対し、前記新たに設定された基準値より大きいかどうかの判別を行うことを特徴とする請求項６又は７記載の順位付け方法。
【請求項９】
前記データ判別ステップによる判別が、前記未整列データを構成する複数のデータの全てに対して行われた場合、
前記データ整列ステップでは、
前記一時記憶ステップと前記仮整列結果記憶ステップで記憶されたデータを結合して、順位付け、整列させることを特徴とする請求項６から８のいずれか１項に記載の順位付け方法。
【請求項１０】
前記仮整列結果記憶ステップで記憶されたデータ数が前記予め指定された数未満ではない場合、
前記仮整列結果記憶ステップで記憶されたデータを、順位付け結果を示す順位付けデータとして出力する出力ステップを有することを特徴とする請求項６から９のいずれか１項に記載の順位付け方法。
【請求項１１】
複数のデータが未整列である未整列データに対し、予め指定された数までの順位付けを行い、整列させるプログラムであって、
前記未整列データを構成する各データに対し、所定の基準値より大きいかどうかの判別を行うデータ判別処理と、
前記判別の結果、前記基準値より大きいデータのみを前記予め指定された数分一時的に記憶する一時記憶処理と、
前記一時記憶処理で記憶されたデータを順位付け、整列させるデータ整列処理と、
前記データ整列処理により整列させられたデータを記憶する仮整列結果記憶処理と、
をコンピュータに実行させることを特徴とするプログラム。
【請求項１２】
前記データ整列処理により整列させられたデータが前記仮整列結果記憶処理で記憶された場合、
前記一時記憶処理で記憶されたデータを初期化する初期化処理をコンピュータに実行させることを特徴とする請求項１１記載のプログラム。
【請求項１３】
前記未整列データを構成するデータのうち、前記データ判別処理による判別が行われていない未処理データがある場合、
前記仮整列結果記憶処理で記憶されたデータのうち、最後尾のデータを前記基準値として新たに設定する基準値設定処理をコンピュータに実行させ、
前記データ判別処理として、
前記未処理データを構成する各データに対し、前記新たに設定された基準値より大きいかどうかの判別処理をコンピュータに実行させることを特徴とする請求項１１又は１２記載のプログラム。
【請求項１４】
前記データ判別処理による判別が、前記未整列データを構成する複数のデータの全てに対して行われた場合、
前記データ整列処理として、
前記一時記憶処理と前記仮整列結果記憶処理で記憶されたデータを結合して、順位付け、整列させる処理をコンピュータに実行させることを特徴とする請求項１１から１３のいずれか１項に記載のプログラム。
【請求項１５】
前記仮整列結果記憶処理で記憶されたデータ数が前記予め指定された数未満ではない場合、
前記仮整列結果記憶処理で記憶されたデータを、順位付け結果を示す順位付けデータとして出力する出力処理をコンピュータに実行させることを特徴とする請求項１１から１４のいずれか１項に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、未整列のデータに対し、所定の順位数までの順位付けを行い、順位付け結果を得る順位付け装置、順位付け方法及びプログラムに関する。
【背景技術】
【０００２】
本発明に関連する技術として、未整列のデータに対し、必要（目的）とする順位数までの順位付けを行い、順位付け結果を得る技術がある（例えば、特許文献１〜５参照）。このような技術において、一般的には、まず未整列の全データに対してクイックソートやマージソートなどの整列処理を行い、次に、整列されたデータから、必要とする順位数までの順位付け結果を抽出することが多い。そのため、多くの計算量が必要となり、順位付け結果を得るまでに時間がかかるという問題があった。
【特許文献１】特開２００７−１７９３７７号公報
【特許文献２】特開２００４−９４５０４号公報
【特許文献３】特開２００５−３８３３８号公報
【特許文献４】特開２００６−１９２１４２号公報
【特許文献５】特許第２９２６８０３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
本発明は、上記事情に鑑みてなされたものであり、未整列のデータから、必要とする順位数までの順位付け結果を高速に算出する順位付け装置、順位付け方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００４】
かかる目的を達成するために、本発明の順位付け装置は、複数のデータが未整列である未整列データに対し、予め指定された数までの順位付けを行い、整列させる順位付け装置であって、未整列データを構成する各データに対し、所定の基準値より大きいかどうかの判別を行うデータ判別部と、判別の結果、基準値より大きいデータのみを予め指定された数分一時的に記憶する一時記憶部と、一時記憶部に記憶されたデータを順位付け、整列させるデータ整列部と、データ整列部により整列させられたデータを記憶する仮整列結果記憶部と、を有することを特徴とする。
【０００５】
本発明の順位付け方法は、複数のデータが未整列である未整列データに対し、予め指定された数までの順位付けを行い、整列させる順位付け方法であって、未整列データを構成する各データに対し、所定の基準値より大きいかどうかの判別を行うデータ判別ステップと、判別の結果、基準値より大きいデータのみを予め指定された数分一時的に記憶する一時記憶ステップと、一時記憶ステップで記憶されたデータを順位付け、整列させるデータ整列ステップと、データ整列ステップにより整列させられたデータを記憶する仮整列結果記憶ステップと、を有することを特徴とする。
【０００６】
本発明のプログラムは、複数のデータが未整列である未整列データに対し、予め指定された数までの順位付けを行い、整列させるプログラムであって、未整列データを構成する各データに対し、所定の基準値より大きいかどうかの判別を行うデータ判別処理と、判別の結果、基準値より大きいデータのみを予め指定された数分一時的に記憶する一時記憶処理と、一時記憶処理で記憶されたデータを順位付け、整列させるデータ整列処理と、データ整列処理により整列させられたデータを記憶する仮整列結果記憶処理と、をコンピュータに実行させることを特徴とする。
【発明の効果】
【０００７】
本発明によれば、未整列のデータから、必要とする順位数までの順位付け結果を高速に算出することにより、順位付け結果を出力するまでの処理時間を短縮することが可能となる。
【発明を実施するための最良の形態】
【０００８】
以下、本発明を実施するための最良の形態について添付図面を参照して詳細に説明する。
【０００９】
本発明の一実施形態である順位付け装置の構成について、図１を参照して詳細に説明する。
図１を参照すると、本実施形態の順位付け装置は、順位付け処理に必要なデータを入力するための入力手段１０と、実際の順位付け処理を行う制御装置２０と、順位付け処理に必要なデータを格納するための記憶手段３０とから構成されている。
【００１０】
入力手段１０は、必要順位数入力部１０１と、未整列データ入力部１０２とを備えている。
【００１１】
必要順位数入力部１０１は、順位付け結果として必要なデータ数である必要順位数１０３を、制御装置２０と記憶手段３０に入力する手段を提供する。
【００１２】
未整列データ入力手段１０２は、順位付けが可能な複数のデータ（値）で構成された未整列データを、記憶手段３０に入力する手段を提供する。
【００１３】
制御手段２０は、データ判別部２０１と、データ整列部２０２とを備えている。
【００１４】
データ判別部２０１は、データ記憶部３０１の中のデータの一つからデータ判別のための基準値２０３を設定し、データ記憶部３０１のデータを先頭から最後尾まで基準値２０３より大きいか否かの判別処理を行う。この判別処理にて基準値２０３より大きいデータは、一時記憶部３０２に逐次格納する。また、一時記憶部３０２が満杯になった時点で判別処理を一時中断し、データ整列部２０２に整列処理を依頼する。
【００１５】
データ整列部２０２は、一時記憶部３０２に格納されたデータと仮整列結果記憶部３０３に格納されたデータとを連結し、クイックソートやマージソートなどの通常の整列手法によってデータを整列する。また、整列した結果のうち仮整列結果記憶部３０３の容量だけ、上位のデータを仮整列結果記憶部３０３に格納する。さらに、仮整列結果記憶部３０３に格納されたデータのうち最も下位のデータを新たな基準値として、基準値２０３を更新する。整列結果の格納と基準値２０３の更新が終了後、判別処理が中断されていた場合はデータ判別部２０１に判別処理の続行を依頼し、判別処理が終了していた場合は、順位付け結果として順位付けデータ４０１を出力する。
【００１６】
記憶手段３０は、データ記憶部３０１と、一時記憶部３０２と、仮整列結果記憶部３０３とを備えている。記憶手段３０は、必要順位数入力手段１０１から送信された必要順位数だけのデータを記憶するのに必要な容量を、一時記憶部３０２と仮整列結果記憶部３０３に確保する。
【００１７】
データ記憶部３０１は、未整列データ入力手段１０２から受け取った未整列データ１０４を格納し、データ判別部２０１の判別処理に用いられる。また、データ判別部２０１にて一時記憶部３０２に格納されたデータは、データ記憶部３０１から削除する。
【００１８】
一時記憶部３０２は、データ判別部２０１から送信されたデータを記憶する。
【００１９】
仮整列結果記憶部３０３は、データ整列部２０２から送信されたデータを記憶する。
【００２０】
次に、図１及び図２のフローチャートを参照して本実施形態の順位付け装置の動作（本発明の一実施形態である順位付け方法）について詳細に説明する。
【００２１】
入力手段１０は、記憶手段３０に対し、必要順位数１０３と未整列データ１０４を送信する。ここで、例として、必要順位数１０３とは、予め指定される所定の数値であり、未整列データ１０４とは、複数の数値が未整列となっているデータである。記憶手段３０は、受け取った未整列データ１０４をデータ記憶部３０１に格納し、必要順位数１０３に応じた容量で一時記憶部３０２と仮整列結果記憶部３０３を初期化する（ステップＡ１）。
【００２２】
制御手段２０は、データ記憶部３０１に格納された未整列データ１０４の先頭の値を、基準値２０３として設定する（ステップＡ２）。
【００２３】
データ判別部２０１は、データ記憶部３０１を参照するときのデータ参照位置を、データ記憶部３０１の先頭に設定する（ステップＡ３）。
【００２４】
データ判別部２０１は、データ記憶部３０１の未整列データ１０４を先頭から参照していく。この参照のとき、データ判別部２０１は、参照しているデータ（参照データ）と、基準値２０３とを比較する（ステップＡ４）。データ判別部２０１は、比較の結果、参照データが基準値２０３より大きい場合（ステップＡ４／ＹＥＳ）、参照データを一時記憶部３０２に格納後、参照データをデータ記憶部３０１から削除する（ステップＡ５）。なお、比較の結果、参照データが基準値２０３より大きくない場合（ステップＡ４／ＮＯ）は、ステップＡ１０へ進む。
【００２５】
ステップＡ５における参照データの格納により、一時記憶部３０２の容量が満杯になった場合（ステップＡ６／ＹＥＳ）、データ整列部２０２は、一時記憶部３０２と仮整列結果記憶部３０３に格納されたデータ配列を結合して整列処理を行い、結果のうち上位のデータを仮整列結果記憶部３０３に格納する（ステップＡ７）。
【００２６】
ステップＡ７の後、データ整列部２０２は、一時記憶部３０２を初期化する（ステップＡ８）。さらにデータ整列部２０２は、データ判別部２０１で利用される基準値として、仮整列結果記憶部３０３の最後尾の値を基準値２０３に設定する（ステップＡ９）。
【００２７】
データ判別部２０１は、データ記憶部３０１のデータ参照位置が最後尾になるまで、データの参照位置を一つ進め、ステップＡ４からＡ９までの判別処理を繰り返す（ステップＡ１０／ＮＯ、ステップＡ１１）。
【００２８】
データ判別部２０１の判別処理が終了後（ステップＡ１０／ＹＥＳ）、データ整列部２０２は、ステップＡ７と同様の整列処理を行う（ステップＡ１２）。
【００２９】
仮整列結果記憶部３０３が満杯である場合、すなわち仮整列結果記憶部３０３のデータ数が必要順位数１０３未満ではない場合（ステップＡ１３／ＮＯ）、制御手段２０は、仮整列結果記憶部３０３に記憶されたデータを、順位付け結果を示す順位付けデータ４０１として出力する（ステップＡ１３／ＮＯ）。
【００３０】
仮整列結果記憶部３０３が満杯ではない場合、すなわち仮整列結果記憶部３０３のデータ数が必要順位数１０３未満である場合は（ステップＡ１３／ＹＥＳ）、例えば基準値２０３の値を２で割るなどして小さくし、ステップＡ３に戻る（ステップＡ１４）。
【００３１】
以上説明した本実施形態の動作を要約すると、次のようになる。順位付け対象となる未整列データ１０４を格納したデータ記憶部３０１から、制御装置２０内に定められた基準値２０３を基に、データ判別部２０１によって必要順位数１０３内に入る可能性のあるデータであるかを判別し、必要順位数１０３の分だけの容量を持った一時記憶部３０２に格納する。一時記憶部３０２が満杯になったら、格納されたデータをデータ整列部２０２で整列し、仮整列結果記憶部３０３に格納する。このデータ判別とデータ整列を繰り返し、整列処理対象を減らすことで順位付けデータ４０１を得るまでの時間を短縮する。
【００３２】
なお、本実施形態では、順位付け結果を得るための計算量を少なくするために、図２のステップＡ４およびＡ５において、順位付けを行うための未整列データ１０４から、整列処理を行う必要があると思われるデータとそうでないデータの振り分けを行っている。
【００３３】
また、本実施形態では、順位付け結果を得るまでの記憶手段の容量を小さくするために、図２のステップＡ２において、一時記憶部３０２と仮整列結果記憶部３０３を必要順位数１０３に則して初期化し、ステップＡ７〜Ａ９のような整列処理を行っている。
【００３４】
次に、具体例を用いて上記本実施形態の順位付け装置の動作を説明する。
図３に示すように、例えば、必要順位数と１０３して「３」、未整列データ１０４として「６，８，２，１，７，１０，３，１１，５，４，１２，９」が入力手段１０から与えられたとする。
【００３５】
このとき、データ記憶部３０１の先頭の値「６」が基準値２０３として設定される（ステップＡ２）。
【００３６】
次に、データ判別部２０１によって、データ記憶部３０１の先頭から順番に、一時記憶部３０２が満杯になるまで判別処理が行われる（ステップＡ３、Ａ４、Ａ５、Ａ６／ＮＯ、Ａ１０／ＮＯ、Ａ１１）。
【００３７】
データ記憶部３０１の「１０」の位置まで判別処理が進んだ時点で一時記憶部３０２が満杯になるので（ステップＡ６／ＹＥＳ）、データ整列部２０２が、整列処理を行って結果「１０，８，７」を仮整列結果記憶部３０３に格納する（ステップＡ７）。また、データ整列部２０２は、一時記憶部３０２を初期化し（ステップＡ８）、その後、新たな基準値２０３として仮整列結果記憶部３０３の末尾のデータ「７」を設定する（ステップＡ９）。
【００３８】
データ判別部２０１は、この新たな基準値２０３である「７」を用いて、再び一時記憶部３０２が満杯になるまで判別処理を繰り返す。一時記憶部３０２が満杯になったところで（ステップＡ６／ＹＥＳ）、データ整列部２０２は、一時記憶部３０２と仮整列結果記憶部３０３のデータ配列を結合して整列処理を行い、結果「１２，１１，１０」を仮整列結果記憶部３０３に格納に格納する（ステップＡ７）。また、データ整列部２０２は、一時記憶部３０２を初期化（ステップＡ８）の後に、基準値２０３を「１０」に設定する（ステップＡ９）。しかし、データ判別部２０１はデータ記憶部３０１の判別処理を終えているので、最後にデータ整列部２０２が、一時記憶部３０２と仮整列結果記憶部３０３を整列処理して仮整列結果記憶部３０３に格納（本具体例の場合では一時記憶部３０２が空なので結果は変わらない）する。そして、データ整列部２０２は、この仮整列結果記憶部３０３に記憶されたデータを、順位付け結果を示す順位付けデータ４０１として出力する。
【００３９】
以上説明したように、本実施形態によれば、未整列なデータ配列に対して、特定の順位までの順位付け結果を求めるための計算量を少なくでき、順位付け結果を高速に算出することができるので、順位付け結果を出力するまでの処理時間を短縮することが可能となる。その理由は、基準値を用いてデータ判別を行うことで、整列処理を行うデータを削減することと、整列処理を行うデータ数を必要とされる順位数に絞り込むためである。
【００４０】
例えば、順位付けなどに必要とされる整列処理で一般によく用いられるクイックソートでは、未整列なデータ数をＮとしたときの計算量をオーダ表記にて表すと、最良の場合Ｏ（Ｎｌｏｇ Ｎ）、最悪の場合Ｏ（Ｎ＾２）である。これに比べ本実施形態では、必要順位数をＲとし、データ整列部２０２の整列処理にクイックソートを利用、整列処理は平均計算量で行われ判別処理は最悪の場合を考えると、計算量は次のようになる。
Ｏ（Ｎ／Ｒ）×Ｏ（２Ｒ ｌｏｇ ２Ｒ）＝Ｏ（Ｎ ｌｏｇ Ｒ）
なお、データ整列部２０２のクイックソートが最悪の場合の計算量は次のようになる。
Ｏ（Ｎ／Ｒ）×Ｏ（２Ｒ＾２）＝Ｏ（ＮＲ）
【００４１】
そのため、データ数Ｎに対して必要順位数Ｒが小さい場合、クイックソートなどの一般的な整列手段より計算量を少なくできることができる。
【００４２】
また、図４に示すように、本実施形態と同様にデータ判別部２０１が行うような判別処理を行い、基準値より大きいデータは仮整列結果記憶部の順位付けとして正しい位置に挿入するような動作を行った場合（データ整列部２０２のような一時記憶部を用いた整列処理を行わない場合）の計算量は、データ記憶部３０１と仮整列結果記憶部３０３の容量に応じた比較処理が必要なため、平均で次のようになる。
Ｏ（Ｎ）×Ｏ（Ｒ／２）＝Ｏ（ＮＲ）
この計算量は、最悪の場合も同様である。
このことから、図４のフローに示す方法で順位付けを行うよりもデータ整列部２０２を用いた整列処理を行ったほうが、計算量が少ないことがわかる。
【００４３】
最後に、上記特許文献５と本実施形態との違いを以下に述べておく。
特許文献５の発明は、限られた主記憶領域の中で、クイックソートのピボット値（基準値）の概念を有効活用し、効率の良いソート処理方法（クイックソートの概念とマージソートの概念を組み合わせたもの）を実現するものである。
特許文献５の発明は、主に、ソート対象のデータを一回走査する間に、ピボット値を変更することによって強いキーを弱いキーとを分別する方法（Ａ）と、分別したキーを主記憶領域に残すか、作業記憶領域の中間レコード列に追加するかを行うことで任意のサイズの分割ソート列（中間レコード列）を生成する方法（Ｂ）から構成されている。
方法（Ａ）については、方法（Ｂ）における「主記憶領域に残す（後に新たな中間レコード列として追加する）か、作業記憶領域の中間レコード列に追加するか」を判断するための手段であり、本実施形態の基準値とは異なる目的を持ったものである。本実施形態の基準値は、上述したように、限られた順位付け結果を得る過程で、その順位結果内に入る可能性があるか否かを判定するからである。
方法（Ａ）と本実施形態は共に、クイックソートにおけるピボット値の考え方から派生した利用をしているため、一見類似しているように見えるが、その意味合いは異なる。すなわち、本実施形態のデータ判別部と、特許文献５の発明の方法（Ａ）とは異なる。
方法（Ｂ）については、マージ処理を行うために任意の数に分割されたソート列を作るための方法である。そのため、方法（Ｂ）によって得られる各中間レコード列は個々の中でソートされているものの、全体の順位付け結果を表すものとなっていない。よって、この方法（Ｂ）では、順位付け結果を得るために、２回のデータ走査（中間レコード列を作るためのデータ走査と、中間レコード列をマージするためのデータ走査）を行う必要がある。これに対し、本実施形態では、最初の基準値の選択を間違わなければ、１回のデータ走査で処理を終えることができる。この点からも、本実施形態と、特許文献５の発明とが異なると言える。
【００４４】
以上、本発明の実施形態について説明したが、上記実施形態に限定されるものではなく、その要旨を逸脱しない範囲において種々の変形が可能である。
【００４５】
例えば、上述した各実施形態における動作（各フローチャートに示す動作）は、ハードウェア、または、ソフトウェア、あるいは、両者の複合構成によって実行することも可能である。
【００４６】
ソフトウェアによる処理を実行する場合には、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれているコンピュータ内のメモリにインストールして実行させてもよい。あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させてもよい。
【００４７】
例えば、プログラムは、記録媒体としてのハードディスクやＲＯＭ（Read Only Memory）に予め記録しておくことが可能である。あるいは、プログラムは、ＣＤ−ＲＯＭ(Compact Disc Read Only Memory)，ＭＯ(Magneto optical)ディスク，ＤＶＤ(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的、あるいは、永続的に格納（記録）しておくことが可能である。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することが可能である。
【００４８】
なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送してもよい。または、ＬＡＮ(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送してもよい。コンピュータでは、転送されてきたプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることが可能である。
【００４９】
また、上記実施形態で説明した処理動作に従って時系列的に実行されるのみならず、処理を実行する装置の処理能力、あるいは、必要に応じて並列的にあるいは個別に実行するように構築することも可能である。
【産業上の利用可能性】
【００５０】
本発明は、Ｗｅｂコンテンツなどの大量のデータから、閲覧数や閲覧者の興味に対する適合度といった順位付けのための評価値がある場合に、その評価値を利用して限られた範囲での上位データや下位データの一覧を高速に出力する用途に適用できる。また、上位または下位の限られた範囲の整列処理が必要なシステム全般に適用可能である。
【図面の簡単な説明】
【００５１】
【図１】本発明の実施形態に係る順位付け装置の構成を示すブロック図である。
【図２】本発明の実施形態に係る順位付け装置の動作（順位付け方法）を示すフローチャートである。
【図３】本発明の実施形態に係る順位付け装置の動作の具体例を説明するための図である。
【図４】本発明の実施形態とは別の順位付けの動作を示すフローチャートである。
【符号の説明】
【００５２】
１０    入力手段
２０    制御装置
３０    記憶装置
１０１    必要得順位数入力部
１０２    未整列データ入力部
１０３    必要順位数
１０４    未整列データ
２０１    データ判別部
２０２    データ整列部
２０３    基準値
３０１    データ記憶部
３０２    一時記憶部
３０３    仮整列結果記憶部
４０１    順位付けデータ
【図１】
2010092088.tif 000003
【図２】
2010092088.tif 000004
【図３】
2010092088.tif 000005
【図４】
2010092088.tif 000006