Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Data structure
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Usage == Data structures serve as the basis for [[abstract data type]]s (ADT). The ADT defines the logical form of the data type. The data structure implements the physical form of the [[data type]].<ref>{{cite web|title=Abstract Data Types|url=https://opendsa-server.cs.vt.edu/ODSA/Books/CS3/html/ADT.html|website=Virginia Tech - CS3 Data Structures & Algorithms|access-date=2023-02-15|archive-url=https://web.archive.org/web/20230210114105/https://opendsa-server.cs.vt.edu/ODSA/Books/CS3/html/ADT.html|archive-date=2023-02-10|url-status=live}}</ref> Different types of data structures are suited to different kinds of applications, and some are highly specialized to specific tasks. For example, [[Relational database|relational databases]] commonly use [[B-tree]] indexes for data retrieval,<ref>{{cite book|chapter-url=http://searchsecurity.techtarget.com/generic/0,295582,sid87_gci1184450,00.html|archive-url=https://web.archive.org/web/20070818140343/http://searchsqlserver.techtarget.com/generic/0,295582,sid87_gci1184450,00.html|archive-date=2007-08-18|url-status=usurped|title=Beginning Database Design|isbn=978-0-7645-7490-0|author=Gavin Powell|chapter=Chapter 8: Building Fast-Performing Database Models|publisher=[[Wrox Press|Wrox Publishing]]|year=2006}}</ref> while [[compiler]] [[Implementation|implementations]] usually use [[hash table]]s to look up [[Identifier (computer languages)|identifiers]].<ref>{{cite web |title=1.5 Applications of a Hash Table |url=http://www.cs.uregina.ca/Links/class-info/210/Hash/ |website=University of Regina - CS210 Lab: Hash Table |access-date=2018-06-14 |archive-date=2021-04-27 |archive-url=https://web.archive.org/web/20210427183057/https://www.cs.uregina.ca/Links/class-info/210/Hash/ |url-status=dead }}</ref> Data structures provide a means to manage large amounts of data efficiently for uses such as large [[database]]s and internet indexing services. Usually, efficient data structures are key to designing efficient [[algorithm]]s. Some formal design methods and [[programming language]]s emphasize data structures, rather than algorithms, as the key organizing factor in software design. Data structures can be used to organize the storage and retrieval of information stored in both [[main memory]] and [[Computer data storage|secondary memory]].<ref>{{cite web |title=When data is too big to fit into the main memory | archive-url=https://web.archive.org/web/20180410032656/http://homes.sice.indiana.edu/yye/lab/teaching/spring2014-C343/datatoobig.php | url-status=dead | archive-date=2018-04-10 |url=http://homes.sice.indiana.edu/yye/lab/teaching/spring2014-C343/datatoobig.php |website=Indiana University Bloomington - Data Structures (C343/A594)|year=2014}}</ref>
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)