Skip to main content
ICT
Lesson AB32 - Hash-Coded Data Storage
 
Main Previous Next
Title Page >  
Summary >  
Lesson A1 >  
Lesson A2 >  
Lesson A3 >  
Lesson A4 >  
Lesson A5 >  
Lesson A6 >  
Lesson A7 >  
Lesson A8 >  
Lesson A9 >  
Lesson A10 >  
Lesson A11 >  
Lesson A12 >  
Lesson A13 >  
Lesson A14 >  
Lesson A15 >  
Lesson A16 >  
Lesson A17 >  
Lesson A18 >  
Lesson A19 >  
Lesson A20 >  
Lesson A21 >  
Lesson A22 >  
Lesson AB23 >  
Lesson AB24 >  
Lesson AB25 >  
Lesson AB26 >  
Lesson AB27 >  
Lesson AB28 >  
Lesson AB29 >  
Lesson AB30 >  
Lesson AB31 >  
Lesson AB32 >  
Lesson AB33 >  
Vocabulary >  
 

C. Order of a Hash-Coded Data Search page 5 of 8

  1. After scanning an item at a cash register, the number of steps required to find the price is constant:

    1. Hash the bar code value and get the hash table location.

    2. Go to that location in the hash table, and traverse the linked list until the item is found.

    3. Return the price.

  2. The number of steps in this algorithm is constant. The hashing scheme tells the program exactly where to look in the hash table; therefore, this type of search is independent of the amount of data stored. We categorize this type of algorithm as constant time, or O(1).

  3. If the linked lists get lengthy, this could add a few undesirable extra steps to the process. A good hashing scheme will minimize the length of the longest list.

  4. An interesting alternative to linked lists is the use of ordered binary trees to deal with collisions. For example, the hash table could consist of 10,000 potential binary trees, each ordered by a key field.

  5. Remember that determining the order of an algorithm is only a categorization, not an exact calculation of the number of steps. A hashing scheme will always take more than one step, but the number of steps is independent of the size of the data set, hence it is called O(1).

 

Main Previous Next
Contact
 © ICT 2006, All Rights Reserved.