Search
Create
Log in
Sign up
Log in
Sign up
Introduction to computing
STUDY
Flashcards
Learn
Write
Spell
Test
PLAY
Match
Gravity
Terms in this set (121)
What are some misconceptions about computer science
It's the study of computers
The study of how to write computer programs
The study of the uses and applications of computers and software
What is the definition of computer science
Study of algorithms such as:
Their formal and mathematical properties
Their linguistic realizations
Their applications
What's an informal definition of algorithms
An ordered sequence of instructions that's guaranteed to solve a specific problem
What are the 3 types of operations used to construct algorithms
Sequential
Conditional
Iterative
Why are formal algorithms so important in computer science?
If we can specify an algorithm to solve a problem, then we can automate its solution
Machine, robot, person, or thing casting out the steps of the algorithm is known as what
Computing agent
If some problems are unsolvable, some solutions are to slow, and some solutions aren't known yet, what are they called
Unsolved problems
What is the formal definition of an algorithm
A well-ordered collection of unambiguous and effectivity computable operations, that when executed, produces a result and hacks in a finite amount of time
Upon completion of an operation we always know which operation to do next
Well-ordered collection
What are a couple of ambiguous statements when writing algorithms
Go back and do it again (do what again)
Start over (start what over)
What can be understood by the computing agent without having to be further defined or simplified
Unambiguous/primitive operation
Is it enough for an operation to be understandable
No, it must also be doable
What does it mean that it has to be doable by the computing agent
It has to be effect detection effectively computable
Does a result have to be produced after the execution of a finite number of operations
Yes
What can an algorithms result be
A number, text, light, picture, sound, or change in the computing agent's environment
what runs forever and is usually a mistake
Infinite loop
If we can specify an algorithm to solve a problem, then what can we do
Then we can automate its solution
What may not be suitable for computers to perform
Algorithms for everyday
What focuses on algorithms suitable for computers
Algorithmic problem
What's a tool for designing algorithms
Pseudocode
Natural language is:
Expressive, easy to use
Verbose, unstructured, and ambiguous
Programming languages are
Structure, designed for computers
Grammatically fussy, cryptic
What lies between natural language and programming languages
Pseudocode
What performs a single task
Sequential operations
What's a single numeric calculation
Computation
What gets data values from outside the algorithm
Input
What sends data values to the outside world
Output
What's a named location to hold a value
Variable
What's made up only of sequential operations
Sequential algorithm
What changes the normal flow of control
Control operation
What asks a question and selects among alternative options
Conditional statement
Do the steps of a conditional statement
1) evaluate the true/false condition
2) if the condition is true, then do the first set of operations and skip the second set
3) if the condition is false, skip the first step of operations and do the second set
What's an operation that causes looping, repeating a block of instructions
Iteration
What's a test to see if a loop should continue
Continuation condition
What had instructions to perform continually
Loop body
What are the three primitive operations
Sequential, conditional, and iterative
What illustrates algorithm discovery
Sequential algorithm
An incomplete iterative algorithm
A correct algorithm
Working toward a correct, efficient solution
Elaborating
A collection of pre-defined useful algorithms
Library
What are the two parts of an algorithm
1) Sliding the pattern along the text, aligning it with each position in turn
2) given a particular alignment, determine if there is a match at that location
What focuses on a high level and not details
Abstraction
What should start with a big picture and gradually elaborate parts
Top-down design
What's pseudocode used for
Algorithm design:
Structure like code, but allows English and math phrasing and notation
What does algorithmic problem solving involve
Step-by-step development of algorithm pieces
User of abstraction, and top-down design
Are there many solutions to a given problem
Yes
How do we evaluate an algorithm
Ease of understanding
Elegance
Time/space efficiency
What is ease of understanding useful for
Checking correctness
Program maintenance
What is using a clever or non-obvious approach
Elegance
What often conflicts with ease of understanding
Elegance
What does elegance reinforce
Correctness
What's an algorithms use of time and space resources called
Efficiency
It's timing an algorithm always useful
No
What are some confounding factors in efficiency
Machine speed
Size of input
What is timing an algorithm on standard data sets
Benchmarking
The study of the efficiency of algorithms
Analysis of algorithms
The task of finding a specific value, or deciding it's not there
Searching
Given a target value and a random list of values, find the location of the target in the list, if it occurs, by checking each value in the list in turn
Sequential search algorithm
Smallest amount of work algorithm does and target found with the first comparison
Best case
Greatest amount of work algorithm does and target never found or lost value
Worst case
Depends on likelihood of different scenarios occurring and if each value is equally likley to to be searched, work done varies from 1-n, averages N/2
Average case
The set of functions that grow in a linear fashion
Order of magnitude
Change in growth as N increases is what
Constant size
The task of putting a list of values into numeric or alphabetical order
Sorting
What is hidden in the "find largest" step
Central unit of work
What's done to find largest changes as unsorted portion shrinks
Work
Eventually, every function with what order has greater values than any function with order n
N^2
What grows very slowly
lg(N)
An algorithm that does work on the order of (n^k)
Polynomial bounded
PWhere do most common problems come from
Polynomial bounded
what isn't polynomial bounded
Hamiltonian circuit
An algorithm whose order of growth is (2^n)
Exponential algorithm
Problems with no polynomialy-bounded solutions
Intractable
Algorithms that partially solve, or provide sub-optimal solutions to, intractable performs
Approximation problems
What must we evaluate the quality of and what do we compare
Algorithms and competing algorithms
What is the order of magnitude
(lg N),(N),(n^2),(2^n)
Problems with only exponential algorithms are what
Intractable
External representation
Base-10 numbers
Keyboard characters
Human-oriented
Internal representation
Base-2 numbers
Base-2 codes for characters
Computer-oriented
Base-2 positional numbering system
Binary numbering system
What uses fixed-length binary numbers for integers
Computers
When the computer tries to makea number that's too large
Arithmetic overflow
What do signed integers include
Negative numbers
What uses 1 bit for the sign and the rest for the value
Sign/magnitude notation
What do you use to make the negative number flip every bit and add one
Two's compliment representation
What uses base 10
Scientific notation
What maps characters onto binary numbers in a standard way
Characters and text
8-bit numbers for each character
ASCII
16-bit numbers for each characters
Unicode
Sounds and images require converting naturally analog representations to what
Digital representations
What are the different types of sound waves
Amplitude
Period
Frequency
Height of the wave at a moment in time
Amplitude
Length of time until wave pattern repeats
Period
Number of periods per time unit
Frequency
Record color or intensity at fixed, discrete intervals in 2 dimensions
Image sampling
Individual record samples
Pixels
Colors are combinations of red, green, and blue
One byte each for red, green, and blue
RGB encoding scheme
What stores pictures as two-d grid of pixel values
Raster graphics
Storing data in a reduced-size form to save space/time
Data compression
Data can be perfectly restored
Lossless
Data cannot be perfectly restored
Lossy
Why do computers use binary
"bistable" systems are reliable
What are the two states of bistable
Current on/off
Magnetic field left/right
Solid state switches
Change on/off when given power on control line
Extremely small (billions per chip)
Enable computers that work with gigabytes of data
Transistors
Rules for manipulating true/false
Boolean logic
What can be converted to circuits
Boolean expressions
Pertains to the design and construction of new circuits
Hardware design/logic design
Lay out true/false values for boolean expressions, for each possible true/false input
Truth tables
An electronic device that operates on inputs to produce outputs
Gate
What are gates built from
Transistors
Has input wires, contains gates connected by wires, and has output wires
Circuit
Input is 2 unsigned binary numbers
Output is 1 if inputs are identical, and 0 otherwise
Start with one-but version (1-CE) And build general version from that
Compare-for-equality (CE) circuit
Input is 2 unsigned n-bit numbers
Output is 1 unsigned n-bit number, the result of adding inputs together
Full adder circuit
Make decisions, determine order of operations, select data values
Control circuits
Sends a signal out only one output, chosen by its input
Decoder
Why do computers use binary
They maximize reliability for electronic systems
What basic algorithmic tasks can we build circuits from
Comparisons
Arithmetic
Control
The manipulation of the 2 logical values t and f
Boolean logic
What do we use boolean logic for
Construct circuits
What are the 3 basic expressions for boolean logic
And, or, not
What define the operations for each of the boolean expressions
Truth tables
Switches triggered by electronic signals
Transistors
YOU MIGHT ALSO LIKE...
Chp 9) Problem Solving and Design - CS
24 terms
Big Idea Vocab 5,4,2
81 terms
IGCSE Computer Science Paper 2
50 terms
Computer Science
31 terms
OTHER SETS BY THIS CREATOR
Writing 101 final
15 terms
Chapter 7: Aesthetics
14 terms
Chapter 6: Knowledge and skepticism
25 terms
Chapter 5: Mind and body
15 terms