Flashcards › Test Prep & College › AP Computer Science
AP Computer Science Key Terms
Programming, data, algorithms, networks and the impact of computing.
0 of 97 known
97 cards
- AlgorithmTermA finite set of steps to solve a problem
- SequencingTermRunning statements in order
- SelectionTermChoosing which code runs based on a condition
- IterationTermRepeating a block of code
- VariableTermA named place that stores a value
- Data typeTermThe kind of value, such as integer, string or boolean
- BooleanTermA value that is true or false
- StringTermA sequence of characters
- Integer overflowTermA result too big for the number of bits available
- Round-off errorTermSmall error from limited precision in storing real numbers
- FunctionTermA named block of code that can be called
- ProcedureTermA named group of instructions, possibly with parameters
- ParameterTermA variable in a function definition that receives a value
- ArgumentTermThe actual value passed to a function
- Return valueTermThe value a function sends back
- LibraryTermA collection of prewritten code
- APITermA set of rules for how software components interact
- AbstractionTermHiding detail to manage complexity
- ModularityTermDividing a program into independent parts
- ClassTermA blueprint for creating objects
- ObjectTermAn instance of a class with state and behavior
- Instance variableTermData stored inside an object
- ConstructorTermCode that initializes a new object
- MethodTermA function belonging to a class
- EncapsulationTermKeeping data private and exposing it through methods
- InheritanceTermA subclass reuses and extends a superclass
- PolymorphismTermThe same method call behaves differently depending on the object
- OverloadingTermMethods with the same name but different parameters
- OverridingTermA subclass provides its own version of a superclass method
- Static methodTermA method belonging to the class, not an object
- ArrayTermA fixed-size, ordered collection of items
- ArrayListTermA resizable list in Java
- ListTermAn ordered collection of elements
- IndexTermThe position of an item, usually starting at 0
- 2D arrayTermAn array of arrays, like a grid
- TraversalTermVisiting each element of a data structure
- For loopTermA loop with a counter and a stopping condition
- While loopTermA loop that repeats while a condition is true
- Infinite loopTermA loop that never ends
- Nested loopTermA loop inside another loop
- Off-by-one errorTermA bug from a loop going one step too far or too short
- Compound conditionTermConditions joined with AND, OR or NOT
- De Morgan's lawsTermNOT (A and B) equals (NOT A) or (NOT B)
- Short-circuit evaluationTermStopping evaluation once the result is known
- RecursionTermA method that calls itself
- Base caseTermThe condition that stops recursion
- Linear searchTermChecking each element in order
- Binary searchTermRepeatedly halving a sorted list
- Selection sortTermRepeatedly selecting the smallest remaining item
- Insertion sortTermPlacing each item into its sorted position
- Merge sortTermDividing in half, sorting each, and merging
- Algorithm efficiencyTermHow the work grows with input size
- Big-O notationTermDescribes how running time grows as input grows
- Reasonable timeTermPolynomial time or better
- Unreasonable timeTermExponential or worse growth
- HeuristicTermAn approach that finds a good-enough answer when exact solutions are too slow
- Undecidable problemTermA problem no algorithm can solve for all cases
- Parallel computingTermRunning parts of a task at the same time
- BitTermA binary digit, 0 or 1
- ByteTermEight bits
- BinaryTermBase-2 number system
- HexadecimalTermBase-16 number system
- Lossless compressionTermReduces size without losing any data
- Lossy compressionTermReduces size by discarding some data
- MetadataTermData that describes other data
- Data cleaningTermFixing or removing incorrect data
- Big dataTermDatasets too large for ordinary processing
- InternetTermA global network of networks
- IP addressTermA numeric address for a device on a network
- DNSTermSystem that translates domain names to IP addresses
- PacketTermA small unit of data sent across a network
- TCP/IPTermProtocols that route and deliver data across the internet
- RouterTermDevice that forwards packets between networks
- Fault toleranceTermA network keeps working when parts fail
- BandwidthTermMaximum data a connection can carry per time
- LatencyTermDelay before data transfer begins
- HTTPTermProtocol for the web
- EncryptionTermScrambling data so only authorized parties can read it
- Symmetric encryptionTermOne shared key encrypts and decrypts
- Public-key encryptionTermA public key encrypts; a private key decrypts
- PhishingTermTricking people into giving up private information
- MalwareTermSoftware designed to cause harm
- Multifactor authenticationTermVerifying identity with more than one kind of proof
- Digital divideTermUnequal access to technology
- CrowdsourcingTermGetting contributions from a large group of people online
- Open sourceTermSoftware whose code is free to view and modify
- Bias in algorithmsTermSystematic unfairness in a program's results
- Creative CommonsTermLicenses that let creators share work with set permissions
- DebuggingTermFinding and fixing errors
- Syntax errorTermCode that breaks the language's rules
- Logic errorTermCode that runs but gives wrong results
- Run-time errorTermAn error that happens while the program is running
- TestingTermRunning a program with chosen inputs to check behavior
- PseudocodeTermInformal, language-independent description of an algorithm
- FlowchartTermA diagram of an algorithm's steps
- Event-driven programmingTermCode that responds to user actions or messages
- SimulationTermA program that models a real-world system
Download this deck
- CSVExcel, Google Sheets, Numbers
- Anki / Quizlet (tab-separated)Import straight into Anki or Quizlet
- JSONFor programmers and apps
- Plain textOne card a line, “front : back”, ready for Peabody's flashcard maker to print
Want paper cards? Paste the plain-text download into the flashcard maker.