US2005015396A1PendingUtilityA1

System and method for structuring data in a computer system

Priority: Jan 17, 2003Filed: Jul 16, 2004Published: Jan 20, 2005
Est. expiryJan 17, 2023(expired)· nominal 20-yr term from priority
Inventors:Jonathan Vu
Y10S707/99934Y10S707/99933G06F 16/9027
28
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A method and system for creating and searching a central linked list comprising a parent node which is situated at the center of a plurality of child nodes. Each child node has two double linked list pointers. One pointer points to the next child node, and the other pointer points to the parent node. Thus, matched data obtained at several child nodes moves immediately back to the parent simultaneously. The parent node contains the memory address and name of central linked list, a description of central linked list, and a description of the relationship between other parent nodes, as well as the relationship between each child node to its specific parent node. Each child node contains a node address, an attribute comprised of some or all of the stored data field and a link to the full data content that may reside on a file or in a database. Memory storage of the structure information is stored in system memory, such as, RAM. Thus, searching and comparison operations may be accomplished without the need to access a hard disk.

Claims

exact text as granted — not AI-modified
1 . A data structure for organizing data, comprising: 
 a parent node stored in a first memory;    a first child node stored in a second memory, wherein said first child node stores a first data item;    a second child node stored in a third memory, wherein said second child node stores a second data item;    a first link connecting said parent node to said first child node;    a second link connecting said first child node to said second child node; and    a third link connecting said parent node to said second child node.    
   
   
       2 . The data structure of  claim 1 , wherein said first child node stores a first content.  
   
   
       3 . The data structure of  claim 2 , wherein said second child node stores a second content.  
   
   
       4 . The data structure of  claim 1 , wherein said parent node has a first attribute describing said data structure.  
   
   
       5 . The data structure of  claim 4 , wherein said first child node has a second attribute describing said first data item.  
   
   
       6 . The data structure of  claim 5 , wherein said first link is comprised of a first pointer directing a program from said parent node to said first child node and a second pointer directing said program from said first child node to said parent node.  
   
   
       7 . The data structure of  claim 6 , wherein said second link is comprised of a third pointer directing said program from said first child node to said second child node and a fourth pointer directing said program from said second child node to said first child node.  
   
   
       8 . The data structure of  claim 7 , wherein said third link is comprised of a fifth pointer directing said program from said second child node to said parent node and a sixth pointer directing said program from said parent node to said second child node.  
   
   
       9 . The data structure of  claim 5 , wherein said first memory has a first memory address and said second memory has a second memory address.  
   
   
       10 . The data structure of  claim 9 , wherein said first pointer directs said program to said second memory address and said second pointer directs said program to said first memory address.  
   
   
       11 . The data structure of  claim 1 , further comprising a second parent node, wherein said second parent node is linked to said parent node.  
   
   
       12 . The data structure of  claim 1 , further comprising a second parent node, wherein said first child node is linked to said parent node and to said second parent node.  
   
   
       13 . The data structure of  claim 5 , wherein said second child node has a third attribute describing said second data item.  
   
   
       14 . The data structure of  claim 13 , wherein said second attribute and said third attribute describe a relationship between said first data item and said second data item, when said second attribute and said third attribute are logically related.  
   
   
       15 . The data structure of  claim 1 , wherein said parent node, said first child node and second child node are stored in a plurality of memory devices.  
   
   
       16 . A method for generating a data structure comprising: 
 creating a parent node in a first memory, a first child node in a second memory and a second child node in a third memory;    storing a first data item in said first child node;    storing a second data item in said second child node; and    linking said parent node to said first child node, said first child node to said second child node, and said parent node to said second child node.    
   
   
       17 . The method of  claim 16 , wherein said first child node stores a first content.  
   
   
       18 . The method of  claim 17 , wherein said second child node stores a second content.  
   
   
       19 . The method of  claim 16 , further comprising associating a first attribute with said parent node, said attribute describing said data structure.  
   
   
       20 . The method of  claim 19 , further comprising associating a second attribute with said first child node, said second attribute describing said first data item.  
   
   
       21 . The method of  claim 20 , wherein said first link is comprised of a first pointer directing a program from said parent node to said first child node and a second pointer directing said program from said first child node to said parent node.  
   
   
       22 . The method of  claim 21 , wherein said second link is comprised of a third pointer directing said program from said first child node to said second child node and a fourth pointer directing said program from said second child node to said first child node.  
   
   
       23 . The method of  claim 22 , wherein said third link is comprised of a fifth pointer directing said program from said second child node to said parent node and a sixth pointer directing said program from said parent node to said second child node.  
   
   
       24 . The method of  claim 20 , further comprising associating a first memory address with said first memory and a second memory address with said second memory.  
   
   
       25 . The method of  claim 24 , wherein said first pointer directs said program to said second memory address and said second pointer directs said program to said first memory address.  
   
   
       26 . The method of  claim 16 , further comprising creating a second parent node, and linking said second parent node to said parent node.  
   
   
       27 . The method of  claim 16 , further comprising creating a second parent node, and linking said first child node to said parent node and to said second parent node.  
   
   
       28 . The method of  claim 20 , further comprising associating a third attribute with said second child node, said third attribute describing said second data item, said second attribute and said third attribute are logically related.  
   
   
       29 . The method of  claim 28 , wherein said second attribute and said third attribute describe a relationship between said first data item and said second data item, when said second attribute and said third attribute are logically related.  
   
   
       30 . The method of  claim 16 , wherein said parent node, said first child node and second child node are created in a plurality of memory devices.  
   
   
       31 . Computer executable software code stored on a computer readable medium, the code for creating a data structure, comprising: 
 code for creating a parent node in a first memory, a first child node comprising a first data item in a second memory and a second child node comprising a second data item in a third memory; and    code for linking said parent node to said first child node, said first child node to said second child node, and said parent node to said second child node.    
   
   
       32 . The computer executable software code according to  claim 31 , wherein said first child node stores a first content.  
   
   
       33 . The computer executable software code according to  claim 32 , wherein said second child node stores a second content.  
   
   
       34 . The computer executable software code according to  claim 31 , further comprising code for associating a first attribute with said parent node, said attribute describing said data structure.  
   
   
       35 . The computer executable software code according to  claim 34 , further comprising code for associating a second attribute with said first child node, said second attribute describing said first data item.  
   
   
       36 . The computer executable software code according to  claim 35 , wherein said first link is comprised of a first pointer directing a program from said parent node to said first child node and a second pointer directing said program from said first child node to said parent node.  
   
   
       37 . The computer executable software code according to  claim 36 , wherein said second link is comprised of a third pointer directing said program from said first child node to said second child node and a fourth pointer directing said program from said second child node to said first child node.  
   
   
       38 . The computer executable software code according to  claim 37 , wherein said third link is comprised of a fifth pointer directing said program from said second child node to said parent node and a sixth pointer directing said program from said parent node to said second child node.  
   
   
       39 . The computer executable software code according to  claim 35 , further comprising code for associating a first memory address with said first memory and a second memory address with said second memory.  
   
   
       40 . The computer executable software code according to  claim 39 , wherein said first pointer directs said program to said second memory address and said second pointer directs said program to said first memory address.  
   
   
       41 . The computer executable software code according to  claim 31 , further comprising code for creating a second parent node and linking said second parent node to said parent node.  
   
   
       42 . The computer executable software code according to  claim 31 , further comprising code for creating a second parent node, and linking said first child node to said parent node and to said second parent node.  
   
   
       43 . The computer executable software code according to  claim 35 , further comprising code for associating a third attribute with said second child node, said third attribute describing said second data item, said second attribute and said third attribute are logically related.  
   
   
       44 . The computer executable software code according to  claim 43 , wherein said second attribute and said third attribute describe a relationship between said first data item and said second data item, when said second attribute and said third attribute are logically related.  
   
   
       45 . The computer executable software code according to  claim 31 , wherein said parent node, said first child node and second child node are created in a plurality of memory devices.  
   
   
       46 . A method for accessing data from a computer memory having a data structure, said data structure including a parent node, a first child node and a second child node, a first link connecting said parent node to said first child node, a second link connecting said first child node to said second child node, and a third link connecting said parent node to said second child node, said method comprising: 
 receiving a request for accessing a data item, wherein said data item is stored in at least one of said first child node and said second child node;    identifying at least one attribute associated with said data item to be accessed;    identifying a parent node containing a reference to at least one of said first child node and said second child node, wherein said at least one of first child node and said second child node is configured for storing at least one data item associated with said attribute; and    identifying which of said first child node and said second child node stores said data item.    
   
   
       47 . The method of  claim 46 , further comprising reading said data item from a computer memory associated with said identified child node.  
   
   
       48 . The method of  claim 46 , further comprising writing said data item to a computer memory associated with said identified child node.  
   
   
       49 . The method of  claim 46 , wherein said at least one attribute relates to said type of said data item to be accessed.  
   
   
       50 . The method of  claim 49 , wherein said type is selected from a group consisting of image data, fingerprint information, RFID information, text data, numerical data and alphanumeric string data.  
   
   
       51 . A system for accessing data from a computer memory having a data structure, said data structure including a parent node, a first child node and a second child node, a first link connecting said parent node to said first child node, a second link connecting said first child node to said second child node, and a third link connecting said parent node to said second child node, said method comprising: 
 an interface for receiving a request for accessing a data item, wherein said data item is stored in at least one of said first child node and said second child node; and    a processor for identifying at least one attribute associated with said data item to be accessed, for identifying a parent node containing a reference to at least said first child node or said second child node, wherein said at least first child node or said second child node is configured for storing at least one data item associated with said attribute, and for identifying which of said at least first child node or said child node stores said data item.    
   
   
       52 . The system of  claim 51 , wherein said processor is further configured for reading said data item from a computer memory associated with said identified child node.  
   
   
       53 . The system of  claim 5   1 , wherein said processor is further configured for writing said data item to a computer memory associated with said identified child node.  
   
   
       54 . The system of  claim 51 , wherein said at least one attribute relates to said type of said data item to be accessed.  
   
   
       55 . The system of  claim 54 , wherein said type is selected from a group consisting of image data, fingerprint information, RFID information, text data, numerical data and alphanumeric string data.  
   
   
       56 . Computer executable software code stored on a computer readable medium, the code for accessing data from a computer memory having a data structure, said data structure including a parent node, a first child node and a second child node, a first link connecting said parent node to said first child node, a second link connecting said first child node to said second child node, and a third link connecting said parent node to said second child node, comprising: 
 code for receiving a request for accessing a data item, wherein said data item is stored in at least said first child node or said second child node;    code for identifying at least one attribute associated with said data item to be accessed;    identifying a parent node containing a reference to at least said first child node or said second child node, wherein said at least first child node or said second child node is configured for storing at least one data item associated with said attribute; and    code for identifying which of said at least first child node or said child node stores said data item.    
   
   
       57 . The computer executable software code according to  claim 56 , further comprising code for reading said data item from a computer memory associated with said identified child node.  
   
   
       58 . The computer executable software code according to  claim 56 , further comprising code for writing said data item to a computer memory associated with said identified child node.  
   
   
       59 . The computer executable software code according to  claim 56 , wherein said at least one attribute relates to said type of said data item to be accessed.  
   
   
       60 . The computer executable software code according to  claim 59 , wherein said type is selected from a group consisting of image data, fingerprint information, RFID information, text data, numerical data and alphanumeric string data.  
   
   
       61 . A data structure for organizing data, comprising: 
 a parent node stored in a memory location;    a plurality of N child nodes (C 1 , C 2 , . . . , C N ) stored in a plurality of N corresponding memory locations, wherein N>2, wherein a plurality of said child nodes each store at least one data item;    wherein said parent node comprises a pointer to each of said N child nodes, each of said child nodes comprises a pointer to said parent node, and each child node C i , where 1<i<N, further comprises a pointer to the next child node C i+1 .    
   
   
       62 . The data structure according to  claim 61 , wherein child node C N  further comprises a pointer to child node C 1 .  
   
   
       63 . The data structure according to  claim 62 , wherein each child node C i  further comprises a pointer to the precious child node C i+1 .  
   
   
       64 . The data structure according to  claim 63 , wherein each child node C i  further comprises a pointer to child node C N .  
   
   
       65 . The data structure according to  claim 61 , wherein at least two of said plurality of N memory locations are on a single chip.  
   
   
       66 . The data structure according to  claim 62 , wherein at least one of said plurality of N child nodes further comprises content.  
   
   
       67 . The data structure according to  claim 63 , wherein at least one child node further comprises an attribute describing a data item stored in a memory location different than the memory location of said at least one child node.  
   
   
       68 . The data structure according to  claim 61  wherein said data item comprises an image.  
   
   
       69 . The data structure for organizing data, comprising: 
 a parent node stored in a first memory location;    a first child node stored in a second memory location, wherein said first child node comprises a first data item;    a second child node stored in a third memory location, wherein said second child node comprises a data item; and    a third child node stored in a fourth memory location;    wherein said parent node comprises a pointer to each of said first, second and third child nodes; said first child node comprises a pointer to said parent node and said second child node; said second child node comprises a pointer to said parent node and said third child node; and said third child node comprises a pointer to said parent node.    
   
   
       70 . The data structure according to  claim 69 , wherein said second child node further comprises a pointer to said first child node.  
   
   
       71 . A data structure according to  claim 2 , wherein said content comprises an image.  
   
   
       72 . A data structure according to  claim 71 , wherein said image comprises a facial image.  
   
   
       73 . A data structure according to  claim 71  wherein said image comprises a fingerprint.

Join the waitlist — get patent alerts

Track US2005015396A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.