1/28
Vocabulary flashcards covering key terms from the lecture notes on data structures, algorithms, and programming concepts.
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
Data
Raw materials that computer programs process; must be stored so they can be processed.
Data Type
Is a way to classify various types of data which determines the values that can be used and operations that can be performed on the corresponding type of data.
Built-in Data Type
A data type with built-in language support. Also known as Primitive.
Derived Data Type
Data types formed by combining primitive types and associated operations. Also known as User-Defined Data Type / Aggregates.
Fundamental Data Type
Base category of primitive types in Java; includes integral, floating-point, and boolean types. Also known as Primitive Data Type.
Integral Data Types
Numeric types that store integers: char, byte, short, int, long. Deals with integers, or numbers without a decimal part (and characters).
Floating-point Data Type
Data type for numbers with decimals.
Boolean Data Type
Deals with logical values.
Abstract Data Type (ADT)
A data type that specifies the logical properties without the implementation details. It has a set of values (data) and set of operations (methods). It is used to describe the characteristics of a data structure.
Class Type
An ADT is presented as a (blank) and treated as a single entity that encapsulates its data together with its method.
Data
An ADT consists of two parts: Declaration of (blank) and Declaration of operations.
Operations
An ADT consists of two parts: Declaration of data and Declaration of (blank).
Data Structures
Specialized format to store and organize data in a computer’s memory or disk. Such as lists, stacks, queue, trees, and graph.
Linear Data Structures
Elements are accessed in a sequential order but it is not compulsory to store all elements sequentially. (e.g., Linked Lists, Stacks, Queues).
Non-linear Data Structures
Elements are stored or accessed in a non-linear order. (e.g., Trees, Graphs).
Basic Operations
Traversing, Searching, Insertion, Deletion, Sorting, Merging.
Algorithm
A finite set of instructions that specify a sequence of operations to solve a problem.
Flowchart
A pictorial or graphical representation of solution to the problem.
Pseudocode
A textual presentation of a flowchart and close to a natural language. It may become part of the program documentation and could be translated into a program
Inputs, Outputs, Definiteness, Finiteness, and Effectiveness
Criteria for Algorithms
Input
Criteria for algorithm. Data items presented to the algorithm. Zero or more quantities are externally supplied.
Output
Criteria for algorithm. Data items presented to the outside world as the result of the execution of a program based on the algorithm.
Definiteness
Criteria for algorithm. Each instruction must be clear and unambiguous.
Finiteness
Criteria for algorithm. All instructions of an algorithm will terminate after a finite number of steps.
Effectiveness
Criteria for algorithm. Each operation must be definite, but must also be feasible.
Choosing the Right Algorithm
It follows that you should be especially mindful of the algorithms and data structures you use for applications that will process lots of data. These include applications used for big data and the Internet of Things.
Memory Usage
The data structures and algorithms you use critically affect two factors in your applications. This one is specifically affected by data structures.
CPU Time
The data structures and algorithms you use critically affect two factors in your applications. Which is one that specifically affected by the algorithms that interact with those data structures.
Balancing Memory and CPU
There is often an inverse relationship: less memory may mean more CPU time, and vice versa.