____________ is the process of reducing complexity by focusing on the main idea. By hiding details irrelevant to the question at hand and bringing together related and useful details, it reduces complexity and allows one to focus on the idea
Front
Active users
5
All-time users
5
Favorites
0
Last updated
3 years ago
Date created
Sep 10, 2021
1.2
(1 card)
____________ is the process of reducing complexity by focusing on the main idea. By hiding details irrelevant to the question at hand and bringing together related and useful details, it reduces complexity and allows one to focus on the idea
Abstraction
1.3
(5 cards)
_____________ determines which parts of an algorithm are executed based on a condition being true or false. It uses _____________ _____________ (if-statements) affect the sequential flow of control by executing different statements based on the value of a Boolean expression
Selection, conditional-statements
___________ is the application of each step of an algorithm in the order in which the code statements are given
Sequencing
All algorithms are characterized by the basic elements of ___________, ___________, & ___________
sequencing, selection, and iteration
____________ are a finite set of instructions that accomplish a specific task & is a step by step process. They need a format, imperative statements, and descriptive qualifiers
Algorithms
_________ is the repeating portion of an algorithm & will repeat for a specified number or until given condition is met. This can be either through _________ loops where it explicitly states number of times loop will be executed using “repeat N times” or _________ loops which the number of times that loop will execute is not specified, using “repeat until”
Iteration, definite, indefinite
1.4
(4 cards)
The __________ __________ method is known as a substitute method because it substitutes each letter of the original, unencrypted message, the cipher text. It works by aligning two alphabets against one another and offsetting them by a number of positions. This can be broke through a brute force attack
Caesar Cipher
__________ is the process of encoding data to prevent unauthorized access while __________ is the process of decoding the data
Encryption, decryption
What three things you need to know to decrypt a message
A ___________ ___________ is encryption that involves one key for both encryption and decryption. Using the key to encrypt the message into a cipher-text secures the message and protects it from prying eyes
Symmetric Key
1.5 & 1.6
(15 cards)
The __________ __________ took idea of a Caesar cipher and added a key to make it more secure
Vigenére cipher
The _____________ phase is when the algorithm is written with code in an appropriate high-level or low-level programming language
prototype phase
Using a __________ ___________, algorithms can be executed
programming language
__________ __________ __________ is trying all possibility of the key or shifts
Brute Force Attack
The development of process to making a program are ordered in ______________, ______________, ______________, and ______________
Investigating/Reflecting, Designing, Prototype, Testing
The _______ _______ consist of confidentiality, integrity, and availability
CIA triad
______________ programming uses binary code underplaying hardware, more efficient for computers. They are unambiguous and easy for the computer to read, but hard for programmers.
Low-level
The _________ phase incorporates investigations to determine the requirements of the program and should outline how to accomplish a given program specification
design phase
The __________ phase runs a small portion of the algorithm in the programming language and then test the code for correctness, efficiency and error catching, among other aspects as a flawed algorithm is a flawed program
Testing phase
_________ languages make lousy programming languages. An example would be English or French, but _________ languages are developed among whole societies and are much simpler and structured/explicit than natural languages.
Natural, Artificial
_______________ limits access to information, allows certain people to see it
Confidentiality
______________ programming languages are visual programming and textual programming that are Relatively easy for humans to read, write, and parse, guaranteed to be unambiguous, less natural for humans, but still readable to the trained eye and easy for machines to parse.
High-level
___________ ensures that the information is correct
Integrity
___________ is the reliability of the information
availability
The ________________ phase turns an idea into reality, analyze the problem. Ask questions, collect information, gather data, look for existing solutions, and think through the situation thoroughly before a solution.
investigating/reflecting phase
1.7
(1 card)
__________: It is a method used to express an algorithm in an informal language. It aims to mimic general style of programming language without worrying about the exact syntax or structure of the language
Pseudocode
1.8
(15 cards)
A __________ __________ algorithm starts in the middle of a sorted data set of numbers and eliminates half of the data; this process repeats until the desired value is found or all elements have been eliminated. In order to implement a this, data must be sorted in order. This uses logarithmic solution & more efficient than linear search
binary search
An _________ of a problem is a specific task that needs to be solved with specific input
instance
_________: As the size of the problem grows, the amount of extra work required increases much more quickly
Linear & Quadratic
A _________ is a general description of a task that can be solved algorithmically
problem
A _________ problem is one which no algorithm can be constructed that always leads to a yes or no answer
undecided
__________: No matter how much a problem grows, the amount of work stays more or less the same
Constant
How do we know which algorithm is bettter
Scalability and Efficiency
A liner/_________ search algorithms checks each element of a list, in order, until the desired value is found or all elements inn the list have been checked(may need to be checked by a million items)
sequential
_____________: Every doubling of the size of a problem only requires one extra unit of work
Logarithmic
An _________ problem is a problem with the goal of finding the best solution among many
optimization
The __________ __________ proved that you cannot write a program that tell you which computation programs will halt and which one will continue forever
Hating Problem
__________ is the estimation of the amount of computational resources used by an algorithm expressed as a function of the size of the input. Algorithms efficiency is determined through formal or mathematical reasoning
Efficiency
_______ law allows us to predict the future through observations of trends
Moore's
What are four comparisons that are true about algorithms
___________: The capacity for a system to change in size and scale to meet new demands. (If this algorithm is efficient on this data set, what about this data set?)
Scalability
1.9 & 1.10
(2 cards)
__________ __________ occurs when a computing innovation systematically discriminates against certain individuals or groups and creates unfair outcomes for some and favorable outcomes for others.
Algorithmic Bias
__________ is an approach to a problem that produce a solution that is not guaranteed to be optimal and is not produced at a reasonable time, but may be used when techniques that are guaranteed to always find an optimal solution are impractical.
Heuristic