In computer science, an abstract data type (ADT) is a mathematical model for data types, where a data type is defined by its behavior (semantics) from the point of view of a user of the data, specifically in terms of possible values, possible operations on data of this type, and the behavior of these operations.
In computer science, an array data structure, or simply an array, is a data structure consisting of a collection of elements (values or variables), each identified by at least one array index or key.
In computer programming and particularly in Lisp, an association list, often referred to as an alist, is a linked list in which each list element (or node) comprises a key and a value.
In computing, associative containers refer to a group of class templates in the standard library of the C++ programming language that implement ordered associative arrays.
A name–value pair, key–value pair, field–value pair or attribute–value pair is a fundamental data representation in computing systems and applications.
In computer science, an AVL tree (named after inventors Adelson-Velsky and Landis) is a self-balancing binary search tree.
AWK is a programming language designed for text processing and typically used as a data extraction and reporting tool.
In computer science, a bidirectional map, or hash bag, is an associative data structure in which the (key, value) pairs form a one-to-one correspondence.
Big O notation is a mathematical notation that describes the limiting behaviour of a function when the argument tends towards a particular value or infinity.
In computer science, binary search trees (BST), sometimes called ordered or sorted binary trees, are a particular type of container: data structures that store "items" (such as numbers, names etc.) in memory.
C++ ("see plus plus") is a general-purpose programming language.
Clojure (like "closure") is a dialect of the Lisp programming language.
Cloud computing is an information technology (IT) paradigm that enables ubiquitous access to shared pools of configurable system resources and higher-level services that can be rapidly provisioned with minimal management effort, often over the Internet.
In computer science, a collection or container is a grouping of some variable number of data items (possibly zero) that have some shared significance to the problem being solved and need to be operated upon together in some controlled fashion.
Collision is used in two slightly different senses in theoretical computer science and telecommunications.
Common Lisp (CL) is a dialect of the Lisp programming language, published in ANSI standard document ANSI INCITS 226-1994 (R2004) (formerly X3.226-1994 (R1999)).
A computer file is a computer resource for recording data discretely in a computer storage device.
Computer science deals with the theoretical foundations of information and computation, together with practical techniques for the implementation and application of these foundations.
Content-addressable memory (CAM) is a special type of computer memory used in certain very-high-speed searching applications.
A CPU cache is a hardware cache used by the central processing unit (CPU) of a computer to reduce the average cost (time or energy) to access data from the main memory.
D is an object-oriented, imperative, multi-paradigm system programming language created by Walter Bright of Digital Mars and released in 2001.
In computer science, a data structure is a data organization and storage format that enables efficient access and modification.
A database is an organized collection of data, stored and accessed electronically.
In object-oriented programming, the decorator pattern is a design pattern that allows behavior to be added to an individual object, either statically or dynamically, without affecting the behavior of other objects from the same class.
Exception handling is the process of responding to the occurrence, during computation, of exceptions – anomalous or exceptional conditions requiring special processing – often changing the normal flow of program execution.
In mathematics, a function was originally the idealization of how a varying quantity depends on another quantity.
Go (often referred to as Golang) is a programming language created at Google in 2009 by Robert Griesemer, Rob Pike, and Ken Thompson.
A hash function is any function that can be used to map data of arbitrary size to data of a fixed size.
In computing, a hash table (hash map) is a data structure that implements an associative array abstract data type, a structure that can map keys to values.
Haskell is a standardized, general-purpose compiled purely functional programming language, with non-strict semantics and strong static typing.
Introduction to Algorithms is a book by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein.
In computer programming, an iterator is an object that enables a programmer to traverse a container, particularly lists.
Java is a general-purpose computer-programming language that is concurrent, class-based, object-oriented, and specifically designed to have as few implementation dependencies as possible.
In computer science, a Judy array is a data structure implementing a type of associative array with high performance and low memory usage.
A key–value database, or key–value store, is a data storage paradigm designed for storing, retrieving, and managing associative arrays, a data structure more commonly known today as a dictionary or hash.
In computer science, a library is a collection of non-volatile resources used by computer programs, often for software development.
In computer science, linear search or sequential search is a method for finding a target value within a list.
In computer science, a linked list is a linear collection of data elements, whose order is not given by their physical placement in memory.
Lua (from meaning moon) is a lightweight, multi-paradigm programming language designed primarily for embedded use in applications.
McGraw-Hill Education (MHE) is a learning science company and one of the "big three" educational publishers that provides customized educational content, software, and services for pre-K through postgraduate education.
In computing, memoization or memoisation is an optimization technique used primarily to speed up computer programs by storing the results of expensive function calls and returning the cached result when the same inputs occur again.
The MIT Press is a university press affiliated with the Massachusetts Institute of Technology (MIT) in Cambridge, Massachusetts (United States).
In computer science, a multimap (sometimes also multihash or multidict) is a generalization of a map or associative array abstract data type in which more than one value may be associated with and returned for a given key.
MUMPS (Massachusetts General Hospital Utility Multi-Programming System), or M, is a general-purpose computer programming language that provides ACID (Atomic, Consistent, Isolated, and Durable) transaction processing.
Object Pascal refers to a branch of object-oriented derivatives of Pascal, mostly known as the primary programming language of Delphi.
The object-relational impedance mismatch is a set of conceptual and technical difficulties that are often encountered when a relational database management system (RDBMS) is being served by an application program (or multiple application programs) written in an object-oriented programming language or style, particularly because objects or class definitions must be mapped to database tables defined by a relational schema.
Objective-C is a general-purpose, object-oriented programming language that adds Smalltalk-style messaging to the C programming language.
OCaml, originally named Objective Caml, is the main implementation of the programming language Caml, created by Xavier Leroy, Jérôme Vouillon, Damien Doligez, Didier Rémy, Ascánder Suárez and others in 1996.
Open addressing, or closed hashing, is a method of collision resolution in hash tables.
Perl is a family of two high-level, general-purpose, interpreted, dynamic programming languages, Perl 5 and Perl 6.
PHP: Hypertext Preprocessor (or simply PHP) is a server-side scripting language designed for Web development, but also used as a general-purpose programming language.
In computer science, a pointer is a programming language object that stores the memory address of another value located in computer memory.
PowerShell is a task automation and configuration management framework from Microsoft, consisting of a command-line shell and associated scripting language.
In computer science, primitive data type is either of the following.
Python is an interpreted high-level programming language for general-purpose programming.
In computer science, a radix tree (also radix trie or compact prefix tree) is a data structure that represents a space-optimized trie in which each node that is the only child is merged with its parent.
A red–black tree is a kind of self-balancing binary search tree in computer science.
A relational database is a digital database based on the relational model of data, as proposed by E. F. Codd in 1970.
Rexx (Restructured Extended Executor) is an interpreted programming language developed at IBM by Mike Cowlishaw.
Ruby is a dynamic, interpreted, reflective, object-oriented, general-purpose programming language.
Scala is a general-purpose programming language providing support for functional programming and a strong static type system.
In computer science, a search tree is a tree data structure used for locating specific keys from within a set.
Seed7 is an extensible general-purpose programming language designed by Thomas Mertes.
In computer science, a self-balancing (or height-balanced) binary search tree is any node-based binary search tree that automatically keeps its height (maximal number of levels below the root) small in the face of arbitrary item insertions and deletions.
In computer programming, a sentinel value (also referred to as a flag value, trip value, rogue value, signal value, or dummy data) is a special value in the context of an algorithm which uses its presence as a condition of termination, typically in a loop or recursive algorithm.
In computer science, in the context of data storage, serialization is the process of translating data structures or object state into a format that can be stored (for example, in a file or memory buffer) or transmitted (for example, across a network connection link) and reconstructed later (possibly in a different computer environment).
SETL (SET Language) is a very high-level programming language based on the mathematical theory of sets.
Smalltalk is an object-oriented, dynamically typed, reflective programming language.
SNOBOL (StriNg Oriented and symBOlic Language) is a series of computer programming languages developed between 1962 and 1967 at AT&T Bell Laboratories by David J. Farber, Ralph E. Griswold and Ivan P. Polonsky, culminating in SNOBOL4.
In software engineering, a software design pattern is a general, reusable solution to a commonly occurring problem within a given context in software design.
Swift is a general-purpose, multi-paradigm, compiled programming language developed by Apple Inc. for iOS, macOS, watchOS, tvOS, and Linux.
Tcl (pronounced "tickle" or tee cee ell) is a high-level, general-purpose, interpreted, dynamic programming language.
In computer science, a trie, also called digital tree and sometimes radix tree or prefix tree (as they can be searched by prefixes), is a kind of search tree—an ordered tree data structure that is used to store a dynamic set or associative array where the keys are usually strings.
In mathematics, a tuple is a finite ordered list (sequence) of elements.
In the programming language C++, unordered associative containers are a group of class templates in the C++ Standard Library that implement hash table variants.
A Van Emde Boas tree (or Van Emde Boas priority queue), also known as a vEB tree, is a tree data structure which implements an associative array with -bit integer keys.
Visual Basic for Applications (VBA) is an implementation of Microsoft's event-driven programming language Visual Basic 6, which was discontinued in 2008, and its associated integrated development environment (IDE).
Visual FoxPro is a discontinued data-centric, object-oriented, procedural, programming language produced by Microsoft.
The Wolfram Language is a general multi-paradigm programming language developed by Wolfram Research and is the programming language of the mathematical symbolic computation program Mathematica and the Wolfram Programming Cloud.
The Xojo programming environment is developed and commercially marketed by Xojo, Inc.
.NET Framework (pronounced dot net) is a software framework developed by Microsoft that runs primarily on Microsoft Windows.
Assoc list, Associative arrays, Associative container, Associative map, Dictionary (data structure), Hash array, Hasharray, Key-value association, Key-value data, Key–value data, Map (computer science), Map (data structure).