JP2001527240A5 - - Google Patents
Download PDFInfo
- Publication number
- JP2001527240A5 JP2001527240A5 JP2000525830A JP2000525830A JP2001527240A5 JP 2001527240 A5 JP2001527240 A5 JP 2001527240A5 JP 2000525830 A JP2000525830 A JP 2000525830A JP 2000525830 A JP2000525830 A JP 2000525830A JP 2001527240 A5 JP2001527240 A5 JP 2001527240A5
- Authority
- JP
- Japan
- Prior art keywords
- record
- symbols
- current
- sequence
- symbol
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 description 9
- 230000000875 corresponding Effects 0.000 description 8
- 238000003780 insertion Methods 0.000 description 2
Description
【特許請求の範囲】
【請求項1】 リンクされたレコードのリストを含むデータ構造内の記号のシーケンスを管理する方法であって、前記記号のシーケンスをレコードの二重集合に1記号ずつ挿入し、前記二重集合は、
・ 記号(例えば、0−9)毎に1つの要素を持つポインタの配列レコードであるリンクされたレコード(Aレコード)のリストである第1の集合と、
・ 挿入される記号のシーケンス全体を含むストリング(Bレコード)である第2の集合と、
を含み、
最初に第1のAレコードを定義し、また前記Aレコード内の全ての要素を最初にヌル・ポインタにし、次に記号のシーケンスを次のステップで挿入する、すなわち、
(i) 第1のレコードであるか、または現在のポインタが指し示し最初は前記第1のAレコードを指しているレコードである、現在のレコードを選択し、最初はゼロにセットされている深さカウンタを1だけ増やし、
(ii) 最初は「第1の」記号であり後には「現在の」記号である、挿入する記号のシーケンスの次の記号を選択し、
(iii) 前記現在の記号の値を前記現在のレコードへの指標として用いて、前記レコード内の対応する位置にある現在のポインタを発見し、このポインタが他のAレコードを指し示している場合はステップ(i) に戻り、
(iv) 前記現在のポインタがヌルの場合はBレコードを作成して記号の全シーケンスをその中に記憶し、新しいBレコードを指し示すように前記現在のポインタを更新して前記挿入を終了し、そうでない場合は次に進み、
(v) 挿入する記号のシーケンスと同じ記号のシーケンスを前記現在のBレコードが含むかどうかチェックし、含む場合は前記挿入手順を終了し、そうでない場合は次に進み、
(vi) 新しいAレコードを作成してリンクさせ、前記深さカウンタを1だけ増やし、挿入する記号のシーケンスの中の次の記号を「現在の」記号にし、
(vii) 前記現在のBレコード内で、前記深さカウンタに対応する記号を選択し、この記号と挿入する記号のシーケンスの中の前記現在の記号とを比較し、2つの記号が等しい場合はステップ(vi) に戻り、そうでない場合は次に進み、
(viii) 新しいBレコードを作成し、新しい記号のシーケンス全体をそこに挿入し、前記現在の記号に対応する前のAレコード内の指標位置に前記Bレコードへのポインタを挿入する、
ことを特徴とする、データ構造内の記号のシーケンスを管理する方法。
【請求項2】 リンクされたレコードのリストを含むデータ構造内の記号のシーケンスを管理する方法であって、前記記号のシーケンスをレコードの二重集合に1記号ずつ挿入し、前記二重集合は、
・ 記号(例えば、0−9)毎に1つの要素を持つポインタの配列レコードであるリンクされたレコード(Aレコード)のリストの第1の集合と、
・ 挿入される記号のシーケンス全体を含むストリング(Bレコード)である第2の集合と、
を含み、
記号のシーケンスを次のステップで削除する、すなわち、
(i) 第1のレコードであるかまたは前記現在のポインタが指し示すレコードである現在のレコードを選択し、最初はゼロにセットされている深さカウンタを1だけ増やし、
(ii) 最初は「第1の」記号であり後には「現在の」記号である、削除する記号のシーケンスの次の記号を選択し、
(iii) 前記現在の記号の値を前記現在のレコードへの指標として用いて、前記レコード内の対応する位置にある新しい現在のポインタを発見し、一時的配列内の前記現在のポインタの値を前記深さカウンタに対応する指標値のところに記憶し、このポインタが他のAレコードを指し示している場合はステップ(i) に戻り、そうでない場合は次に進み、
(iv) 前記現在のポインタがヌル値を含むかどうかチェックし、そうであれば削除手順を終了し、
(v) そうではなく、現在のポインタがBレコードを指し示している場合は、そのBレコードに含まれる記号のシーケンスが削除する記号のシーケンスと同じかどうかチェックし、そうであればそのレコードを削除し、そうでなければ削除手順を終了し、
(vi) Aレコード内の前記現在のBポインタをヌルにセットし、
(vii) 前記現在のAレコード内に2つ以上のBポインタがあるかまたはAポインタがある場合は、削除手順を終了し、
(viii) そうではなく、現在のAレコード内に残っているBポインタが1つだけの場合は、そのAレコードを削除し、前記Bポインタを前のAレコードに移動し、これを前記現在のレコードとして、前記削除するレコードへのAポインタを前記Bポインタに置き換えて、ステップ(vii) に戻る、
ことを特徴とする、データ構造内の記号のシーケンスを管理する方法。
【請求項3】 リンクされたレコードのリストを含むデータ構造内の記号のシーケンスを管理する方法であって、前記記号のシーケンスをレコードの二重集合に1記号ずつ挿入し、前記二重集合は、
・ 記号(例えば、0−9)毎に1つの要素を持つポインタの配列レコードであるリンクされたレコード(Aレコード)のリストの第1の集合と、
・ 挿入される記号のシーケンス全体を含むストリング(Bレコード)である第2の集合と、
を含み、
記号のシーケンスを次のステップで発見する、すなわち、
(i) 第1のレコードであるかまたは前記現在のポインタが指し示すレコードである現在のレコードを選択し、最初はゼロにセットされている深さカウンタを1だけ増やし、
(ii) 最初は第1の記号であり後には「現在の」記号である、発見する記号のシーケンスの次の記号を選択し、
(iii) 前記現在の記号の値を前記現在のレコードへの指標として用いて、前記レコード内の対応する位置にある新しい現在のポインタを発見し、このポインタが他のAレコードを指し示している場合はステップ(i) に戻り、そうでない場合は次に進み、
(iv) 前記現在のポインタがヌル値を含むかどうかチェックし、そうであれば探索手順を終了して「発見せず」を示し、
(v) そうではなく、前記現在のポインタが型Bのレコードを指し示している場合は、そのレコードを候補の記号のシーケンスとして検索し、
(vi) 前記候補の番号を1記号ずつ走査し、発見する記号のシーケンスの中の対応する記号と比較し、対応する位置の記号が一致しない場合または記号のシーケンス長さが異なる場合は、終了して「発見せず」を示し、両方の記号のシーケンスの全ての記号を比較して等しいことが分かった場合は、探索を終了して「発見した」を示す、
ことを特徴とする、データ構造内の記号のシーケンスを管理する方法。
【請求項4】 前記記号は数字を意味し、前記記号のシーケンスは電話番号を意味することを特徴とする、請求項1−請求項3のいずれかに記載のデータ構造内の記号のシーケンスを管理する方法。
【請求項1】 リンクされたレコードのリストを含むデータ構造内の記号のシーケンスを管理する方法であって、前記記号のシーケンスをレコードの二重集合に1記号ずつ挿入し、前記二重集合は、
・ 記号(例えば、0−9)毎に1つの要素を持つポインタの配列レコードであるリンクされたレコード(Aレコード)のリストである第1の集合と、
・ 挿入される記号のシーケンス全体を含むストリング(Bレコード)である第2の集合と、
を含み、
最初に第1のAレコードを定義し、また前記Aレコード内の全ての要素を最初にヌル・ポインタにし、次に記号のシーケンスを次のステップで挿入する、すなわち、
(i) 第1のレコードであるか、または現在のポインタが指し示し最初は前記第1のAレコードを指しているレコードである、現在のレコードを選択し、最初はゼロにセットされている深さカウンタを1だけ増やし、
(ii) 最初は「第1の」記号であり後には「現在の」記号である、挿入する記号のシーケンスの次の記号を選択し、
(iii) 前記現在の記号の値を前記現在のレコードへの指標として用いて、前記レコード内の対応する位置にある現在のポインタを発見し、このポインタが他のAレコードを指し示している場合はステップ(i) に戻り、
(iv) 前記現在のポインタがヌルの場合はBレコードを作成して記号の全シーケンスをその中に記憶し、新しいBレコードを指し示すように前記現在のポインタを更新して前記挿入を終了し、そうでない場合は次に進み、
(v) 挿入する記号のシーケンスと同じ記号のシーケンスを前記現在のBレコードが含むかどうかチェックし、含む場合は前記挿入手順を終了し、そうでない場合は次に進み、
(vi) 新しいAレコードを作成してリンクさせ、前記深さカウンタを1だけ増やし、挿入する記号のシーケンスの中の次の記号を「現在の」記号にし、
(vii) 前記現在のBレコード内で、前記深さカウンタに対応する記号を選択し、この記号と挿入する記号のシーケンスの中の前記現在の記号とを比較し、2つの記号が等しい場合はステップ(vi) に戻り、そうでない場合は次に進み、
(viii) 新しいBレコードを作成し、新しい記号のシーケンス全体をそこに挿入し、前記現在の記号に対応する前のAレコード内の指標位置に前記Bレコードへのポインタを挿入する、
ことを特徴とする、データ構造内の記号のシーケンスを管理する方法。
【請求項2】 リンクされたレコードのリストを含むデータ構造内の記号のシーケンスを管理する方法であって、前記記号のシーケンスをレコードの二重集合に1記号ずつ挿入し、前記二重集合は、
・ 記号(例えば、0−9)毎に1つの要素を持つポインタの配列レコードであるリンクされたレコード(Aレコード)のリストの第1の集合と、
・ 挿入される記号のシーケンス全体を含むストリング(Bレコード)である第2の集合と、
を含み、
記号のシーケンスを次のステップで削除する、すなわち、
(i) 第1のレコードであるかまたは前記現在のポインタが指し示すレコードである現在のレコードを選択し、最初はゼロにセットされている深さカウンタを1だけ増やし、
(ii) 最初は「第1の」記号であり後には「現在の」記号である、削除する記号のシーケンスの次の記号を選択し、
(iii) 前記現在の記号の値を前記現在のレコードへの指標として用いて、前記レコード内の対応する位置にある新しい現在のポインタを発見し、一時的配列内の前記現在のポインタの値を前記深さカウンタに対応する指標値のところに記憶し、このポインタが他のAレコードを指し示している場合はステップ(i) に戻り、そうでない場合は次に進み、
(iv) 前記現在のポインタがヌル値を含むかどうかチェックし、そうであれば削除手順を終了し、
(v) そうではなく、現在のポインタがBレコードを指し示している場合は、そのBレコードに含まれる記号のシーケンスが削除する記号のシーケンスと同じかどうかチェックし、そうであればそのレコードを削除し、そうでなければ削除手順を終了し、
(vi) Aレコード内の前記現在のBポインタをヌルにセットし、
(vii) 前記現在のAレコード内に2つ以上のBポインタがあるかまたはAポインタがある場合は、削除手順を終了し、
(viii) そうではなく、現在のAレコード内に残っているBポインタが1つだけの場合は、そのAレコードを削除し、前記Bポインタを前のAレコードに移動し、これを前記現在のレコードとして、前記削除するレコードへのAポインタを前記Bポインタに置き換えて、ステップ(vii) に戻る、
ことを特徴とする、データ構造内の記号のシーケンスを管理する方法。
【請求項3】 リンクされたレコードのリストを含むデータ構造内の記号のシーケンスを管理する方法であって、前記記号のシーケンスをレコードの二重集合に1記号ずつ挿入し、前記二重集合は、
・ 記号(例えば、0−9)毎に1つの要素を持つポインタの配列レコードであるリンクされたレコード(Aレコード)のリストの第1の集合と、
・ 挿入される記号のシーケンス全体を含むストリング(Bレコード)である第2の集合と、
を含み、
記号のシーケンスを次のステップで発見する、すなわち、
(i) 第1のレコードであるかまたは前記現在のポインタが指し示すレコードである現在のレコードを選択し、最初はゼロにセットされている深さカウンタを1だけ増やし、
(ii) 最初は第1の記号であり後には「現在の」記号である、発見する記号のシーケンスの次の記号を選択し、
(iii) 前記現在の記号の値を前記現在のレコードへの指標として用いて、前記レコード内の対応する位置にある新しい現在のポインタを発見し、このポインタが他のAレコードを指し示している場合はステップ(i) に戻り、そうでない場合は次に進み、
(iv) 前記現在のポインタがヌル値を含むかどうかチェックし、そうであれば探索手順を終了して「発見せず」を示し、
(v) そうではなく、前記現在のポインタが型Bのレコードを指し示している場合は、そのレコードを候補の記号のシーケンスとして検索し、
(vi) 前記候補の番号を1記号ずつ走査し、発見する記号のシーケンスの中の対応する記号と比較し、対応する位置の記号が一致しない場合または記号のシーケンス長さが異なる場合は、終了して「発見せず」を示し、両方の記号のシーケンスの全ての記号を比較して等しいことが分かった場合は、探索を終了して「発見した」を示す、
ことを特徴とする、データ構造内の記号のシーケンスを管理する方法。
【請求項4】 前記記号は数字を意味し、前記記号のシーケンスは電話番号を意味することを特徴とする、請求項1−請求項3のいずれかに記載のデータ構造内の記号のシーケンスを管理する方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SE9704767A SE513248C2 (sv) | 1997-12-19 | 1997-12-19 | Metod för hantering av datastrukturer |
SE9704767-4 | 1997-12-19 | ||
PCT/SE1998/002221 WO1999032994A2 (en) | 1997-12-19 | 1998-12-04 | Management in data structures |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001527240A JP2001527240A (ja) | 2001-12-25 |
JP2001527240A5 true JP2001527240A5 (ja) | 2006-02-02 |
Family
ID=20409473
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000525830A Pending JP2001527240A (ja) | 1997-12-19 | 1998-12-04 | データ構造内の管理 |
Country Status (8)
Country | Link |
---|---|
US (1) | US6298339B1 (ja) |
EP (1) | EP1040430B1 (ja) |
JP (1) | JP2001527240A (ja) |
KR (1) | KR20010033096A (ja) |
AU (1) | AU1793299A (ja) |
DE (1) | DE69840875D1 (ja) |
SE (1) | SE513248C2 (ja) |
WO (1) | WO1999032994A2 (ja) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6560610B1 (en) | 1999-08-10 | 2003-05-06 | Washington University | Data structure using a tree bitmap and method for rapid classification of data in a database |
US7249149B1 (en) | 1999-08-10 | 2007-07-24 | Washington University | Tree bitmap data structures and their use in performing lookup operations |
US6725326B1 (en) | 2000-08-15 | 2004-04-20 | Cisco Technology, Inc. | Techniques for efficient memory management for longest prefix match problems |
US6775737B1 (en) | 2001-10-09 | 2004-08-10 | Cisco Technology, Inc. | Method and apparatus for allocating and using range identifiers as input values to content-addressable memories |
US6754795B2 (en) * | 2001-12-21 | 2004-06-22 | Agere Systems Inc. | Methods and apparatus for forming linked list queue using chunk-based structure |
US6970971B1 (en) | 2002-01-08 | 2005-11-29 | Cisco Technology, Inc. | Method and apparatus for mapping prefixes and values of a hierarchical space to other representations |
US7899067B2 (en) * | 2002-05-31 | 2011-03-01 | Cisco Technology, Inc. | Method and apparatus for generating and using enhanced tree bitmap data structures in determining a longest prefix match |
US7558775B1 (en) | 2002-06-08 | 2009-07-07 | Cisco Technology, Inc. | Methods and apparatus for maintaining sets of ranges typically using an associative memory and for using these ranges to identify a matching range based on a query point or query range and to maintain sorted elements for use such as in providing priority queue operations |
US7299317B1 (en) | 2002-06-08 | 2007-11-20 | Cisco Technology, Inc. | Assigning prefixes to associative memory classes based on a value of a last bit of each prefix and their use including but not limited to locating a prefix and for maintaining a Patricia tree data structure |
US7441074B1 (en) | 2002-08-10 | 2008-10-21 | Cisco Technology, Inc. | Methods and apparatus for distributing entries among lookup units and selectively enabling less than all of the lookup units when performing a lookup operation |
US7415472B2 (en) * | 2003-05-13 | 2008-08-19 | Cisco Technology, Inc. | Comparison tree data structures of particular use in performing lookup operations |
US7415463B2 (en) * | 2003-05-13 | 2008-08-19 | Cisco Technology, Inc. | Programming tree data structures and handling collisions while performing lookup operations |
US7478109B1 (en) | 2004-03-15 | 2009-01-13 | Cisco Technology, Inc. | Identification of a longest matching prefix based on a search of intervals corresponding to the prefixes |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4468728A (en) * | 1981-06-25 | 1984-08-28 | At&T Bell Laboratories | Data structure and search method for a data base management system |
US4611272A (en) * | 1983-02-03 | 1986-09-09 | International Business Machines Corporation | Key-accessed file organization |
US5497485A (en) * | 1993-05-21 | 1996-03-05 | Amalgamated Software Of North America, Inc. | Method and apparatus for implementing Q-trees |
US5560007A (en) * | 1993-06-30 | 1996-09-24 | Borland International, Inc. | B-tree key-range bit map index optimization of database queries |
SE503376C2 (sv) * | 1994-06-13 | 1996-06-03 | Ericsson Telefon Ab L M | Kundprofilerad telekommunikationstjänst |
US5787430A (en) * | 1994-06-30 | 1998-07-28 | International Business Machines Corporation | Variable length data sequence backtracking a trie structure |
JP3152871B2 (ja) * | 1995-11-10 | 2001-04-03 | 富士通株式会社 | ラティスをキーとした検索を行う辞書検索装置および方法 |
US5758353A (en) * | 1995-12-01 | 1998-05-26 | Sand Technology Systems International, Inc. | Storage and retrieval of ordered sets of keys in a compact 0-complete tree |
US6065046A (en) * | 1997-07-29 | 2000-05-16 | Catharon Productions, Inc. | Computerized system and associated method of optimally controlled storage and transfer of computer programs on a computer network |
US6141655A (en) * | 1997-09-23 | 2000-10-31 | At&T Corp | Method and apparatus for optimizing and structuring data by designing a cube forest data structure for hierarchically split cube forest template |
-
1997
- 1997-12-19 SE SE9704767A patent/SE513248C2/sv not_active IP Right Cessation
-
1998
- 1998-12-04 AU AU17932/99A patent/AU1793299A/en not_active Abandoned
- 1998-12-04 KR KR1020007006459A patent/KR20010033096A/ko not_active Application Discontinuation
- 1998-12-04 EP EP98962774A patent/EP1040430B1/en not_active Expired - Lifetime
- 1998-12-04 JP JP2000525830A patent/JP2001527240A/ja active Pending
- 1998-12-04 DE DE69840875T patent/DE69840875D1/de not_active Expired - Fee Related
- 1998-12-04 WO PCT/SE1998/002221 patent/WO1999032994A2/en not_active Application Discontinuation
- 1998-12-18 US US09/215,122 patent/US6298339B1/en not_active Expired - Lifetime
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4677550A (en) | Method of compacting and searching a data index | |
US8335889B2 (en) | Content addressable storage systems and methods employing searchable blocks | |
CA2117846C (en) | Computer method and storage structure for storing and accessing multidimensional data | |
JP2001527240A5 (ja) | ||
Huddleston et al. | A new data structure for representing sorted lists | |
Comer et al. | The complexity of trie index construction | |
EP0314292A3 (en) | Concurrent record access database system using an index tree structure and method therefor | |
KR910006873A (ko) | 부분적인 키이 브랜치를 구비한 접두사 서치트리 | |
US20090240655A1 (en) | Bit String Seacrching Apparatus, Searching Method, and Program | |
KR20010090840A (ko) | 분할형 포멧으로 저장된 가변 크기의 레코드를 빠르게램덤 액세스하는 장치 및 방법 | |
CN100565508C (zh) | 结构化文档管理设备、搜索设备、存储和搜索方法 | |
NO20014399L (no) | En datastruktur og lagrings- og hentemetode som stötter ordinal-tallbasert datasöking og henting | |
WO1999032994A3 (en) | Management in data structures | |
US20040015498A1 (en) | Method for accessing a storage unit during the search for substrings, and a corresponding storage unit | |
KR100618966B1 (ko) | 데이터 열의 임시 삭제 방법, 복원 방법, 임시 삭제된 데이터 열들을 신속하게 영구 삭제하는 방법과 임시 삭제된 데이터 열들을 복원하거나 영구 삭제하기 위한 부가 정보를 저장하는 기록 매체 | |
WO2005066835A1 (fr) | Procede d'extraction d'un enregistrement d'une page de donnees d'une base de donnees | |
Shneiderman | Reduced combined indexes for efficient multiple attribute retrieval | |
CA2675915C (en) | Content addressable storage systems and methods employing searchable blocks | |
JP2003030040A (ja) | オブジェクトデータベースシステムの複数ハッシュインデックスおよび非ユニークインデックス管理方式 | |
Battiti | Partially persistent dynamic sets for history-sensitive heuristics. | |
US7139763B1 (en) | Method and system for processing data selected for recording to optical media | |
Comer | English dictionary searching with little extra space | |
Nicklas et al. | Index structuring in inverted data bases by TRIES | |
CN116010422A (zh) | 一种基于数据依赖的数据处理方法及装置 | |
CN115391289A (zh) | 一种包含文件信息的目录结构生成方法及装置 |