Lesson 1 Flashcards
______ are the programmatic way of storing data so that data can be used efficiently.
Data Structures
Systematic way to organize data in order to use it efficiently. Almost every enterprise application uses various types of data structures in one or the other way.
Data Structure
Each data structure has this. ________ represents the set of operations that a data structure supports. It only provides the list of supported operations, type of parameters they can accept and return type of these operations.
Interface
__________ provides the internal representation of a data structure. It also provides the definition of the algorithms used in the operations of the data structure.
Implementation
TRUE OR FALSE:
In general, data structures are used to implement the physical forms of abstract data types. Data structures are a crucial part of designing efficient software. They also play a critical role in algorithm design and how those algorithms are used within computer programs.
TRUE
Some examples of how data structures are used include the following: (7)
Storing Data
Managing resources and services
Data Exchange
Ordering and sorting
Indexing
Searching
Scalability
How data structures are used:
Data structures are used for efficient data persistence, such as specifying the collection of attributes and corresponding structures used to store records in a database management system.
Storing data
How data structures are used:
Core operating system (OS) resources and services are enabled through the use of data structures such as linked lists for memory allocation, file directory management and file structure trees, as well as process scheduling queues.
Managing resources and services.
How data structures are used:
Data structures define the organization of information shared between applications, such as TCP/IP packets
Data exchange.
How data structures are used:
Data structures such as binary search trees – also known as an ordered or sorted binary tree – provide efficient methods of sorting objects, such as character strings used as tags. With data structures such as priority queues, programmers can manage items organized according to a specific priority.
Ordering and sorting.
How data structures are used:
Even more sophisticated data structures such as B-trees are used to index objects, such as those stored in a database.
Indexing.
How data structures are used:
Indexes created using binary search trees, B-trees or hash tables speed the ability to find a specific sought-after item.
Searching.
How data structures are used:
Big data applications use data structures for allocating and managing data storage across distributed storage locations, ensuring scalability and performance. Certain big data programming environments – such as Apache
Spark – provide data structures that mirror the underlying structure of database records to simplify querying.
Scalability.
3 characteristics of data structures:
Linear or non-linear
Homogeneous or heterogeneous
Static or dynamic
Characteristics of data structures:
This characteristic describes whether the data items are arranged in sequential order, such as with an array, or in an unordered sequence, such as with a graph.
Linear or non-linear.
Characteristics of data structures:
This characteristic describes whether all data items in a given repository are of the same type. One example is a collection of elements in an array, or of various types, such as an abstract data type defined as a structure in C or a class specification in Java.
Homogeneous or heterogeneous.
Characteristics of data structures:
This characteristic describes how the data structures are compiled. Static data structures have fixed sizes, structures and memory locations at compile time. Dynamic data structures have sizes, structures and memory locations that can shrink or expand, depending on the use.
Static or dynamic.
3 Need for Data Structure:
Data Search
Processor Speed
Multiple Requests
Need for Data Structure:
Consider an inventory of 1 million(106) items of a store. If the application is to search an item, it has to search an item in 1 million(106) items every time slowing down the search. As data grows, search will become slower.
Data Search
Need for Data Structure:
Processor speed although being very high, falls limited if
the data grows to billion records.
Processor speed