Bedrock Computer Technologies, LLC v. Softlayer Technologies, Inc. et al

Filing 284

Response to CLAIM CONSTRUCTION BRIEF filed by AOL Inc, Amazon.com Inc., Google Inc., Match.Com LLC, MySpace Inc., Softlayer Technologies, Inc., Yahoo! Inc.. (Attachments: #1 Affidavit, #2 Exhibit 1, #3 Exhibit 2, #4 Exhibit 3, #5 Exhibit 4, #6 Exhibit 5-1, #7 Exhibit 5-2, #8 Exhibit 5-3, #9 Exhibit 5-4, #10 Exhibit 5-5, #11 Exhibit 5-6, #12 Exhibit 6)(Chaikovsky, Yar)

Download PDF
Bedrock Computer Technologies, LLC v. Softlayer Technologies, Inc. et al Doc. 284 Att. 5 EXHIBIT 4 Dockets.Justia.com 111111 11111111 III 11111 11111 11111 lIft 11111 1110 11111 11111 11110111 11111 III US005287499A United States Patent Nemes FOR METHODS AND APPARATUS STORAGE AND INFORMATION METHOD OF RETRIEVAL UTILIZING AND DIFFERENT COLLISION HASHING AVOIDANCE SCHEMES DEPENDING UPON CLUSTERING IN THE HASH TABLE Inventor Assignee Richard Bell Patent Number of Patent 5287499 Feb 15 1994 Date 4695949 4764863 4866712 4922417 4961139 4979105 4996663 9/1987 8/1988 9/1989 5/1990 10/1990 12/1990 2/1991 Thatte et al III et at 364/200 364/200 371/5.1 Silverthorn Chao Churm Hong et et al 364/200 364/200 395/575 364/900 al al Daly ci Nemes Nemes Brooklyn Research N.Y Inc Knuth Sorting OTHER PUBLICATIONS The Art of Computer Programming vol and Searching Communications Livingston Notice N.J of the term of this patent to AddisonWesley and Reading Pren The portion Mass subsequent disclaimed Feb 26 2008 has been 1973 pp 506549 Kruse Data Structures Program Design ticeHall Appi Filed No 702444 Types Englewood Cliffs N.J 1984 PP 112126 Stubbs et al Data Structures with Abstract Data and Pascal BrooksCole Publishing Monterey 1985 May 16 Related of 1991 Calif pp 10336 U.S Ser Application Data Continuation No 326976 Mar 22 1989 aban Lee Primaiy ExaminerThomas Assistant ExaminerPaul Harrity or FirmLeonard Charles Suchyta Attorney Agent James Falk doned Int Cl.5 GO6F 395/600 371/5.1 364/962 364/962.1 12/00 ABSTRACr An apparatus for U.S Cl 395/700 364/963 performing system In is storage and retrieval in an the information 364/DIG hashing Field of storage disclosed to which uses technique operation order provide loading efficient and Search 395/700 364/900 600 800 371/5.1 graceful the under varying collision conditions system shifts between avoidance the load by is linear References Cited probing with open threshold and load addressing when below chaining deletion U.S 3704363 4339657 4380067 4564944 4638426 4663620 4680700 4680703 PATENT 7/1982 4/1983 1/1986 1/1987 5/1987 7/1987 7/1987 DOCUMENTS et ci al et al al al collision is avoidance threshold are by external Insertion to when 371/5.1 371/5.1 the above 11/1972 Salmassy Larson and retrieval cally the the operations the arranged switch dynami stratagems measured as between local two collision avoidance system to the as Beardsley Arnold et et al Ct al 371/11.2 371/37 loading factor of records on the by number hashed same Chang Paul et 364/200 340/825.5 crosses preselected address thresholds Hester Kriz al 364/200 364/200 DELETE Claims Drawing Sheets DEF00004O5O U.S Patent Feb 15 1994 Sheet of 5287499 FIG 15 I0 FIG DEF00004O51 U.S Patent Feb 15 1994 Sheet of 5287499 FIG RETRIEVE NO DEF00004052 U.S Patent Feb 15 1994 Sheet of 5287499 FIG INSERT YES NO 58 DEF00004053 U.S Patent Feb 15 1994 Sheet of 5287499 FIG DELETE AR -6O HASH SEARCH KEY -61 DECREMENT CELL COUNT -62 -__NOER TABLE DELETE YES REMOVE RECORD RECORD -68 FROM LIST NO COU 65 YES CHANGE TO TABLE FORMAT 67 DEF00004054 5287499 cord position is encountered results in removal of the AND APPARATUS FOR INFORMATION STORAGE AND RETRIEVAL UTILIZING METHOD OF HASHING AND DIFFERENT DEPENDING COLLISION AVOIDANCE SCHEMES UPON CLUSTERING IN THE HASH TABLE is filed METHODS record to be deleted Deletion problems discussed in of this type are Structures considerable detail in Data and Program Design by wood tures Cliffs N.J 1984 Kruse Prentice-Hall and Data pp 112126 Types and Engle Struc by with Abstract Data and Calif PASCAL Stubbs Webre 1985 technique for this all Brooks/Cole Publishing Monterey This application continuation pp 310336 resolving collisions is of application Ser 10 Another external position called table No 07/326976 Mar 22 1989 now abandoned chaining is In store technique each to hash that store TECHNICAL FIELD This retrieval invention relates to information storage to the to able to records hashing linked list is loca the table tion More and actual particularly used to records outside then list is of the hash table to The hash the systems and of the more particularly information dynamic optimize 15 entry linked no more than list is pointer itself head of the reorganization access in stored The linked searched sequentially is such systems when retrieving or storing pointers list record to Deletion accom deleted BACKGROUND Information storage particular or data OF THE INVENTION stored in plished by adjusting the linked eliminate the record from computer-controlled by searching for 20 The has the linear mechanism key in the matching can be retrieved records search require advantages probing with open of simplicity disadvantages if records of the are of addressing technique storage and minimal stored the The is stored record accesses but the deleted records the contamination marked deletion the due to as with Such key key then retrieved accesses or merely de searching into In the techniques storage repeated to leted rithms 25 overhead as more complex and under high load of algo probes mechanism and perform key systems search com such algo such Knuths has the algorithm precipitous factors parisons searching rithrns sive large if storage retrieval degradation ternal of operation Ex even as of augmented search by efficient chaining advantages storage factors simple deletion such binary often requires an exces algorithms operation readily extendible load all is size and graceful neither amount time and under is high Thus the ap and Another storing involves well-known retrieving use much faster method for store 30 proach and information so-called also from computer optimum for The problem then of access little storage to and retrieval systems provide simplicity the of are hashing called In techniques scatter-stor speed involving the of linear or probing but techniques taking for loads These techniques sometimes techniques upon no collisions operation advantage chaining to rise of age or key-transformation hashing tion to called to the system using hashing storage is more for graceful loads of external collisions tech above key is operated storage by in func space used with or in niques 35 which cause produce the address the some It preselected is threshold that the hash the table desired accesses This storage storage or address then also well-known is frequency of retrieval this access location than are directly sequential described of some quency records data in is fewer binary the puter storage probes techniques entitled much higher than others If known ahead of time the data storage fre be can the searches text Hashing by organized 40 trieval the system to minimize re for classic Knuth The Art of Com time of the by placing or at most frequently such records chain accessed at records initial Programming 506549 functions Volume are Sorting and Searching example position optimal priori 45 real the hashing such an pp verse Addison-Wesley Reading to Mass translate 1973 the the head of the Unfortunately system requires of retrieval Hashing of designed uni organization of the storage of the frequency and keys the into addresses table uniformly hashing distributed operations knowledge problem statistics is throughout include hash Typical in storage retrieval systems the truncation folding transposition and modulo is optimal priori organization is of the available storage space the when no arithmetic disadvantage one causing of hashing into techniques the that knowledge concerning frequency more than key can translate in same or storage retrieval strategy so of retrieval statistics address collisions storage operations sometimes vided forward empty latter is Some form of called the initial collision-resolution SUMMARY In OF THE INVENTION illustrative rehashing simple storage will must therefore be pro searching the first accordance these with the and other embodiment are of the by can or for For example the strategy address the of to invention using dual problems overcome which stored from storage organization techniques data is storage location is resolve collision If the This 55 be selected in on the the fly while space hashed to In being technique to called linear so to probing that hash table the table accessed storage is particular the position key considered of the be circular addresses beyond of the each new hash same sion 60 table record If particular in the to that colli end table map back probing is the beginning the is number of records hashing then the i.e with event linear the done table with as open addressing space in the is position is below preselected threshold open to the entire hash overflow resolved the by linear probing under address that that collision occurs the Deletion record deletion as as of records ing Once to number of records hashing above the same accomplished leaving it by marking place or deleted but position rises threshold are all of the records the in by some algorithm One hashing table to 65 the the that position removed from leaving hash such deletion algorithm known Knuths deletion and linked by external chain in chaining the pointer algorithm ate operates by recursively encountered moving an appropri record head of the hashed position When below that is one of the next occupied deleted as number threshold of records in the external chain drops same threshold positions tion into the now that empty next until the record posi not the necessarily the the and marking this record position first empty re caused stroyed external chaining external to the chain hash de and Iterating procedure unoccupied and records returned table DEF00004055 5287499 the records stored there using the this linear probing record under Central accesses cesses units Processing disk Unit CPU unit 12 10 also controls in and open addressing can be Any used of in known deletion controller stored storage are which or In turn ac techniques dual storage dynamically in combined hash table to the digital data disk data on unit stored one more normal disk storage system contain Each either chain position the such as 13 on this disk for operation unit 13 therefore can an record or which can be pointer programs until and disk storage head for of external distinguished required data are by CPU in 10 At from 11 time such programs unit 13 in example by one bit flag and by maintaining holding the hashing therefore in retrieved The above each position system can be simplified of the blocks and stored RAM Unit storage rapid 10 access also controls in hash table records table field count to that 10 Central Processing of the position sents old is number in of heretofore Input-Output vides access ray to 10 tube such for CPU 14 an controller which devices well as turn as pro the hash This count chain repre thresh plurality terminal of input such CRT of the length of the external when the cathode 15 as plurality 15 exceeded reorganization output devices of the the of storage space as printer 16 Terminal operator to the provides in of This dynamic storage of 15 mechanism structions computer into introduce system other and retrieval the system has time the decided advantage of and and such commands may be card and readers printer results computer with of optimizing load tered load linear factors retrieval records regardless overhead until FIG devices supplemented tape input Moreover higher is encoun higher that as readers remotely located other types of input with external factor chaining avoided collisions the terminals vices 20 optical and 16 de for higher number of will for suggests Similarly the provides operation mechanism of the probing times loadings deteriorate substantially the The overall displaying of the computer 16 threshold niques switching selected between to two tech system of similarly tube other 25 FIG for the computer user Printer may ray are of course of the optimize the be supplemented by line printers graphical cathode plotters performance combined system displays types of phototypesetters output devices of the and BRIEF DESCRIPTION complete understanding by considering OF THE DRAWING of the the present following the invention detailed The and art constituents computer are system of FIG in their cooperative typical of operation all well-known systems frame the may be gained in in and are computer main of no such from small description conjunction with accompanying personal architecture computers and since not there to large systems are present The well- drawing which general operation systems of the here FIG storage shows block in diagram which of the computer information invention 30 known vention In and will they form be further is part in system hardware and arrangement system described graphical for retrieval of the present FIG as that shown representation of can be implemented shows general typical software architecture computer of for than system FIG system storage will find block in diagram which of the computer information invention 35 such shown access in F1G mechanism The software 20 FIG simple software arrangement and use shows procedure linear general in retrieval comprises personal ing the an which no more system of the present computers system may comprise In larger turn on systems and providing password in service FIG trieval flow chart for record re to larger number of users login dynamically external reorganizable storage com re 40 dures would nism 20 login typically access the be implemented mechanism user is access proce mecha the bined trieval probing in chaining and Once 20 has placed in completed the system accordance general in the with the present for invention procedure operating FIG tion storage shows flow chart record inser dual system nates the 45 the environment activities of 21 all procedure dynamically and reorganizable system in Operating system 21 coordi of the hardware of components in technique with the shows in storage retrieval accor computer of system shown programs FIG of for and provides use to the dance present invention flow and for number computer assemblers file utility 22 general FIG tion storage general the chart record dele dual user Utilities 22 might and compilers and example comprise basic procedure dynamically and reorganizable system in mathematical routines technique with the facilitate storage retrieval accor handling routines computer system maintenance system of facilities typically dance present reader are invention understanding to designate identical The refer 50 also software FIG programs To ence to the includes plurality of application such as numerals figures used elements common application software 23 24 for 25 Application software comprise package an editor data 2325 sheet might example graphics spread DETAILED DESCRIPTION Referring program and so base man 23 of is ager more is forth Each or of the application to programs plurality It particularly general to FIG Central of the of draw 55 through 25 includes provides access ings there puter shown 10 and block diagram com programmed the ally processes 26 27 26 28 through to respectively hardware system comprising Processing Unit unit CPU by by Random programs Access stored Memory in the RAM 11 are at programmed perform of the the processes tasks 28 which out the actu necessary carry 11 Computer RAM pur In pose 60 corresponding effective use able in application program application the accessed time CPU 10 and CPU 10 Data are executed stored in one instruction other portions order to ages the at make user the of these to pack processes to of must time be and execute sequence RAM tions 11 operated by upon 10 by the program instruc in 2628 The 65 storage the accessed CPU course from data RAM necessary 11 all accor accomplish the users goals invention is dance with 10 well-known of processing multiple units all techniques processors present concerned Such with information CPU and caches may data the comprise and retrieval systems system would interact for in with multiple and/or memory art 11 as is by way also of form one of the application software packages processes storage 23 24 which system instructions well- 25 of FIG the The various 262728 retrieval known data processing implement information and DEF00004056 5287499 are herein disclosed as It as flow charts in and shown of the pseudocode is the the in FIGS APPENDIX and to this storing but records randomly in in any available pointer storage to the space location maintaining next to to each record chain specification tion these the believed that creation to and execu carry skilled out in of the hashed is record in the the When pointer If the search located key there is computer are programs readily necessary to hash table first entry the processes apparent present those used locate this the record search key does is programming art from the disclosure retrieving data not match to record the the pointer therein In contained Many fast techniques are known in the prior space is for storing art In and used locate second is record this way until chain the the is situations to where storage chain desired 10 of records record is traversed or until next adjusting sequentially the considered called cheap is relative often retrieval In time hash- located to end of the technique ing each hashing in used classic reached cords the no pointer record the Deletion to of re bypass record particular for the field information called the storage system in is simply involves record chaining pointers cludes the basis key which the used as delected storing and retrieving associated re 15 External has numerous advantages is over cord function in mathematical translates the function or map called hashing or address key into called the cell number table The delection open addressing does not leave records in place over not the in procedure which simple and must be searched algorithm the size is the storage space is hash Taken circular storage as list future probes and if Knuths records deletion whole of called called tion hash table logically contiguous fixed-size used hash The number of table the can exceed of consecutively cells numbered capable which of units can be expanded Indeed readily storage without space as each storing function in single data item 20 changing for hashing can function be record on or the less The hashing can be any operaaddresses the new to not records Most allocated the for dynamically hashed in key results distributed functions hash table needed quired importantly searches number of probes particular increases the the re key more table evenly throughout include hash conduct rise Known of these not hashing truncation and combina hashing funcin does load 25 precipitously In with table table folding transposition tions tions modulo arithmetic Unfortunately unique what factor an open the addressing system of as operations always is loading to locate ing level grows the average number probes necessary do table cell produce addresses the the particular record also operation grows of the At some retrieval load sys hash same That many distinct keys can are map is into successful number producing of all is called collisions therefore of 30 Some form required collision tion in collision resolution strategy In tem collapses precipitously On the other hand linear dressing has distinct probing over under external addition open ad hashing systems to find the every instance storage advantages load factors chaining storage it necessary an empty loca under more moderate fields is The somewhere alternate else to store storage new record Moreover must be for readily the for pointer avoided the along pointer with the chains If processing the table is such able locations reach overhead of following in during future probes searching displaced 35 implemented page faults virtual incurred memory to minimal number of since the record are during record access be accessed or Two the forms of collision art resolution called are well-known Under due in portion of the hash table locations occupies contig prior The first is open addressing occurs cell uous In storage on one two pages invention open in the the open addressing different whenever hashing to collision the is to accordance of with the both present major and two keys same used number linear takes cell advantages 40 external techniques are these addressing technique probing place hashed record in called linear probing scanning the the next Under cells chaining particularly achieved same are sequential of storage cell More in two on techniques storage system combined selected load table beginning to is with treating in following as cell the one system and the actual strategy current in the is and hash table circular The 45 dynamically factor using depending all the are then stored local stored the first unoccupied of the the encountered is Initially the records hash the linear probe key is Retrieval record cell similar If open the addressing local load shifts with factor linear probing tech The the the until cell search hashed found to there to initial number not nique When the exceeds to preselected the external record linear the is is not the access keys do all match cells threshold chaining system dynamically probe record is is used found successive If technique the local That load is while inserting as reflected or deleting in the table the keys match and the an empty the re50 record ber factor to this num cell is encountered is during in this linear base probing of records hashed If this to the in same hash cord sought as not the data process ter of re examined cords number exceeds this cell threshold are the minates cords an unsuccessful open cell cell search The deletion either hashed address itself reorganized organized store into re re an such the under the addressing as involves or physically cell merely the 55 moved from external chain hash table and marking contents continuity algorithms in deleted fill moving another part of the While of of to the deleted and maintain the deletion disclosed reorganization involves in considerable searches search overhead where time It the probe path The of the both preferred are payoff comes chaining subsequent reduces the the the is external called garbage applications collection greatly that the copending 151638 to present filed applicant 1988 as of course ceeds 60 the frequency of retrievals and most greatly Ser and Pat 1992 Nos and 151639 Feb issued frequency which systems holds of insertions true for deletions data assumed ex an as and list assigned applicants assignee now U.S sumption retrieval causes storage linked Nos 4996663 respectively Feb 261991 and 5121495 Jun When length to deletion fall from the chain the the the below that threshold triggered the entries not chain second called cell general technique Under for collision external stores resolution is necessarily same chain is threshold external in the chaining table is chaining all each 65 formation sorbed In into destroyed and reab hash effectively of the collid table hash table ing records This cell accomplished of Such by making to the are each head further accord with the present addressing invention and the entry linked each list consist pointer linked of by dynamic chaining shifting is between by open external of records lists formed facilitated maintaining record count DEF00004057 5287499 field in each occupied each time hash table cell is This hashed count to is search the key of the record to be inserted produced the cell at is hashed hashing is Using opera incre incremented same cell new record time this hash table address field in is in by the that and decremented cell then is each deleted record data which base for to tion the mented tered tents cell count by one location hashes to this same from the on in box 52 Decision box or 53 is then the en con The count or field is consulted the value each this access where of that is list it determined is list whether If the not insertion deletion and the in field used strategy cell pointer 54 is contents to of the the dynamically to determine entry collision resolution cell pointer external chain box entered add new by then the be used Each includes the hash table also advan table 10 record to the the chain to its This is accomplished is tageously entry is flag indicating to there for whether the walking added end The new record pointer but record or to pointer an external is chain flowchart from with reso at the end of the in chain by placing last process to Referring then of data the retrieve storage present FIG shown records new record record terminal in the previously now penultimate terminates in algorithm and retrieval retrieving the chain The then system in accordance collision box 58 to is invention and involving selected at start is dual Returning 15 decision box 53 if the contents 55 is of the entered lution schemes In dynamically starting the search depending box on load box 31 is hashed where threshold cell not pointer is decision to box factor entered FIG 30 the cell count If 57 the is compared count where numerical upper not where hashing key hashed location using any To box the to cell does the exceed this is known cell ined In to function operation The is cell resulting threshold added 20 entered using then new linear in record from the hashing decision used to access hash table cell is hash table standard terminates the probing box in box 32 if the contents cell of the exam or techniques The cell process terminal threshold all determine to flag the the contains record 58 If the count does is exceed entered Tu pointer one-bit tively guish an can external chain As for previously noted Alterna to distin 25 decision box hashed 55 box 56 to this where table linked of the are be reserved this purpose be used or the the cords same an hash address re re length of the records contents can trieved pointer formed to is into chain entered external in chain cell and between to list and pointers If contents that then placed to the the hashed address at examined cell is make this decision box 33 is Contents to In of the the Box 54 nal place new the record in the pointer list in entered search end of that chain box The process then terminates linked table termi list external linked records the for the matching linked list if key decision to is box ascer 30 58 no The process of forming the in 34 tain to the if are examined box 37 volves more than finding storing that retrieving free first in hash records for placing finding the keys match the contents and of they do 38 entered using first FIG to storage location return is is the in matching box list If record no is The record the record there the and cell process then terminated in matching entered to pointer location hash for table the record return the found message the linked the in box 35 was another storing 35 that the free the storage location second record pointer to If that search unsuccessful and second location cell record there in the originally previous in first and placing process terminated to table decision cell is box box 36 32 if second hash record and so forth Returning initial the contents of the box 39 is table stored record that hashes then that hash to not the pointer cell is decision If elsewhere from probe to record for the entered determine 35 is if empty an the cell is must be relocated pointer again the the is hash table open make room of box 61 empty search the cell box entered to return unsuccessful in using there addressing technique record is message is and the process terminated box 36 to If 40 In FIG where cell shown at is flowchart start not if empty the decision of the box 40 cell is is entered list again deletion tered table cell process the Starting search In box 60 to en that determine is contents pointer logic is This path key hashed the cell provide field at hash necessary cell because does to then of later iterations list cell in of the location is box 62 count If the to contain the next pointer the box 42 table entered location entered cell is decremented determine list by one whether If it Decision or not the box 63 is advance is hash Decision 45 then to contents is box 39 If it re-entered itt of that decision list pointer table is not box 68 algorithm entered is determined cell is box 4.0 that the contents to is use any known deletion to remove the of the current entered the not pointer is decision to is box 41 the the record from the hash table where the If search key compared box 37 process in key in record can 50 or merely be marked deleted As previously deleted and by some noted left in place as current the cell match occurs the entered terminated to can by physically algorithm determined is list algorithm such return in matching If record and does next not cell Knuths is The process terminates in terminal box 38 to match the occur in box 41 hash box 42 box 66 If of 55 it entered the access the table until Thus either is in decision box 63 that the is contents the list in linear probe cell is of the hash table continues the cell pointer is box 64 entered the the where linked pointer to an empty matching containing It encountered encountered are the key list is cell box 39 or box 41 Intervening with cells record This the the is to be deleted removed from easily accomplished the by adjusting record to the pointers that the passed retrieve over box 40 of it chain the just before be deleted to point can to the be seen process FIG is record space to following thus record deleted then The be to serves locate target record whether process or stored 60 storage returned of the deleted space for record can future under chaining open addressing under of the external free storage assignment process that the The retrieve process FIG stored as using another record the is sumes the cess record has storage that previously strategy this been Following sion is removal where of the the record in box 64 cell deci count count most of efficient The is FIG then insures to choice is pro properly made flowchart out In of the 65 insertion box 65 entered to decremented compared not equal another less lower threshold this TL If the the Turning FIG process there shown is to or in than TL threshold the process record insertion dual storage at suitable for carrying terminates is less terminal equal box to the list scheme start of the present invention is FIG the than where or If however TL threshold is cell count is box 67 en re starting box 50 box 51 entered where tered the linked disassembled and the DEF00004058 5287499 10 cords added niques It to the hash table then the using linear probing tech box 66 and hashed is different forms of deletion correspondence and here also are are included in the the APPEN and be further The process that terminates processes collision in terminal of DIX FIGS The between and listings can be seen to FIGS resolution obvious will not cooperate storage provide dual the described It system where form of collision resolution should be clear to those skilled in the art that determined local deleted load dynamically factor the at on time the fly depending are to on the further embodiments those skilled of the in present art invention departing may be from the records be added for for or made by the the without from system Pseudo-code listings each teachings of the present invention of these processes together with pseudo-code two 10 APPENDIX Formal Definitions COfl St table_size size of hash table const const upper lower threshold thres hold used by insert for conversion /s threshold to to chain structure table structire SI 1/ used by delete for conversion lower type list_element_type upper threshold record record_type pointer to record_contents next lust_element_type end type table_element_typerecord next node in linked list count integer to number this cell of stored keys that hash status case empty occupied deleted thi list stiucture of type of data structure that currently storing records hash here tbl record_contents list record_type list_head lust_element_type end var Initial state table array table_size-li of table_element_type hash table of each element of table count status empty tbl structure Retrieve Algorithm procedure var retrievc key key_type table size-i continue boolean DEF00004059 5287499 11 begin 12 hash if key list table then else search linked begin true list pointed to by table head continue while if rable then if table then else emply and continue do occupied table continue false tbl and table key mod mod empty table table size else size if table then else not found found else end end begin Insert Algorithm procedure var list insert table new_record size-i record_type element_type used for constructing chain begin hash new record .key table if table list table then else list insert table convert new record if table begin nil upper_threshzld to then linked list initialize for while loop ji while table empty do to traverse sequence linked list of records and add begin if tablej.stiucture then if hash then table tbl and table occupied begin list_insert table .record_contents DEF00004O6O 5287499 13 knuth delete 14 end elsej mod table size elsej end list_insert if 1modtable_size /while/ new record occujied table_insert table then hash tbleble a ta contents else table table end else table if table list occupied head else if then begin convert to linked list insert new_record end Delete Algorithm procedure var delete key key_type table_size-i iist_element_type used for traversing chain continue begin boolean hash key table if table list table then begin delete list from linked to by list search linked pointed table list and remove if record whose key matches key threshold linked to table table lower then begin convert resident entries table head tbl table knuth_delete while begin tale_insert nil do hash p1.record contents .key pI.record of element pointed contents to remove from linked to list dispose list byp and advance next element DEF00004O61 5287499 15 16 end end end else If then then begin begin convert linked list to table resident entries delete from linked table resident list begin delete true entry continue while continue if do tbl table then if and table key deleted table then continue contents.key false elsei else imodtable size mod mark else table size delete invoke deleted begin or knuth end end /S delete tablezesident entry Mark procedure begin Deleted Algorithm mark deleted table size-i table endR deleted Knuth Delete Algorithm procedure knuth delete table size Delete cell from hash table procedure recursive_delete cell table_size Delete begin if instead of cellj if required recursive_delete is cell marked cell empty empty hashes at or before then else mark if record then in cell position begin contentsj recursive delete contentsk mod table size end then delete elserecursive mod table_size end recursive delete begin knuth delete DEF00004062 5287499 17 recursive delete delete 18 mod table size end knuth List Insert Algorithm type new_record record in it procedure /S var begin list insert varp lust_element type to Allocate list element put new_record and link to list pointed byp list_element_type new allocate list element q.record_contents ql.next new_record end Table Insert Algorithm procedure table_insert in table table_size-I new_record record_type at Store new_record or ahead of position begin while table table end What is table occupied do record mod table_size new occupied claimed is storage portion storage when and retrieval data said to or collision greater count in said storage means is An data generating information using system for equal than said storage preselected retrieval threshold system records of each said address record for said The information cording to means claim for and ac said is hashed in said system further comprising of said data said system comprising means of said for data storing records collision storing storage one records collision at storage set count identical for each so hashed below address when and count having hashed said preselected storage further threshold retrieval storage first addresses responsive to said storage The means for information system ac means lo cording to claim means 55 at comprising to cally said resolving collision collisions by open storage addressing when is for storing said at pointer one of said address data records said count in said means below said hashed is storage to when preselected threshold responsive and to said storage external collision count equal or greater than said pre second locally means means for selected threshold resolving collisions by chaining 60 65 DEF00004063

Disclaimer: Justia Dockets & Filings provides public litigation records from the federal appellate and district courts. These filings and docket sheets should not be considered findings of fact or liability, nor do they necessarily reflect the view of Justia.


Why Is My Information Online?