Flashcards › Test Prep & College › AP Computer Science

AP Computer Science Key Terms

Programming, data, algorithms, networks and the impact of computing.

97 cardsGrades 9–12, College#ap#computer-science

0 of 97 known
97 cards
  • AlgorithmTerm
    A finite set of steps to solve a problem
  • SequencingTerm
    Running statements in order
  • SelectionTerm
    Choosing which code runs based on a condition
  • IterationTerm
    Repeating a block of code
  • VariableTerm
    A named place that stores a value
  • Data typeTerm
    The kind of value, such as integer, string or boolean
  • BooleanTerm
    A value that is true or false
  • StringTerm
    A sequence of characters
  • Integer overflowTerm
    A result too big for the number of bits available
  • Round-off errorTerm
    Small error from limited precision in storing real numbers
  • FunctionTerm
    A named block of code that can be called
  • ProcedureTerm
    A named group of instructions, possibly with parameters
  • ParameterTerm
    A variable in a function definition that receives a value
  • ArgumentTerm
    The actual value passed to a function
  • Return valueTerm
    The value a function sends back
  • LibraryTerm
    A collection of prewritten code
  • APITerm
    A set of rules for how software components interact
  • AbstractionTerm
    Hiding detail to manage complexity
  • ModularityTerm
    Dividing a program into independent parts
  • ClassTerm
    A blueprint for creating objects
  • ObjectTerm
    An instance of a class with state and behavior
  • Instance variableTerm
    Data stored inside an object
  • ConstructorTerm
    Code that initializes a new object
  • MethodTerm
    A function belonging to a class
  • EncapsulationTerm
    Keeping data private and exposing it through methods
  • InheritanceTerm
    A subclass reuses and extends a superclass
  • PolymorphismTerm
    The same method call behaves differently depending on the object
  • OverloadingTerm
    Methods with the same name but different parameters
  • OverridingTerm
    A subclass provides its own version of a superclass method
  • Static methodTerm
    A method belonging to the class, not an object
  • ArrayTerm
    A fixed-size, ordered collection of items
  • ArrayListTerm
    A resizable list in Java
  • ListTerm
    An ordered collection of elements
  • IndexTerm
    The position of an item, usually starting at 0
  • 2D arrayTerm
    An array of arrays, like a grid
  • TraversalTerm
    Visiting each element of a data structure
  • For loopTerm
    A loop with a counter and a stopping condition
  • While loopTerm
    A loop that repeats while a condition is true
  • Infinite loopTerm
    A loop that never ends
  • Nested loopTerm
    A loop inside another loop
  • Off-by-one errorTerm
    A bug from a loop going one step too far or too short
  • Compound conditionTerm
    Conditions joined with AND, OR or NOT
  • De Morgan's lawsTerm
    NOT (A and B) equals (NOT A) or (NOT B)
  • Short-circuit evaluationTerm
    Stopping evaluation once the result is known
  • RecursionTerm
    A method that calls itself
  • Base caseTerm
    The condition that stops recursion
  • Linear searchTerm
    Checking each element in order
  • Binary searchTerm
    Repeatedly halving a sorted list
  • Selection sortTerm
    Repeatedly selecting the smallest remaining item
  • Insertion sortTerm
    Placing each item into its sorted position
  • Merge sortTerm
    Dividing in half, sorting each, and merging
  • Algorithm efficiencyTerm
    How the work grows with input size
  • Big-O notationTerm
    Describes how running time grows as input grows
  • Reasonable timeTerm
    Polynomial time or better
  • Unreasonable timeTerm
    Exponential or worse growth
  • HeuristicTerm
    An approach that finds a good-enough answer when exact solutions are too slow
  • Undecidable problemTerm
    A problem no algorithm can solve for all cases
  • Parallel computingTerm
    Running parts of a task at the same time
  • BitTerm
    A binary digit, 0 or 1
  • ByteTerm
    Eight bits
  • BinaryTerm
    Base-2 number system
  • HexadecimalTerm
    Base-16 number system
  • Lossless compressionTerm
    Reduces size without losing any data
  • Lossy compressionTerm
    Reduces size by discarding some data
  • MetadataTerm
    Data that describes other data
  • Data cleaningTerm
    Fixing or removing incorrect data
  • Big dataTerm
    Datasets too large for ordinary processing
  • InternetTerm
    A global network of networks
  • IP addressTerm
    A numeric address for a device on a network
  • DNSTerm
    System that translates domain names to IP addresses
  • PacketTerm
    A small unit of data sent across a network
  • TCP/IPTerm
    Protocols that route and deliver data across the internet
  • RouterTerm
    Device that forwards packets between networks
  • Fault toleranceTerm
    A network keeps working when parts fail
  • BandwidthTerm
    Maximum data a connection can carry per time
  • LatencyTerm
    Delay before data transfer begins
  • HTTPTerm
    Protocol for the web
  • EncryptionTerm
    Scrambling data so only authorized parties can read it
  • Symmetric encryptionTerm
    One shared key encrypts and decrypts
  • Public-key encryptionTerm
    A public key encrypts; a private key decrypts
  • PhishingTerm
    Tricking people into giving up private information
  • MalwareTerm
    Software designed to cause harm
  • Multifactor authenticationTerm
    Verifying identity with more than one kind of proof
  • Digital divideTerm
    Unequal access to technology
  • CrowdsourcingTerm
    Getting contributions from a large group of people online
  • Open sourceTerm
    Software whose code is free to view and modify
  • Bias in algorithmsTerm
    Systematic unfairness in a program's results
  • Creative CommonsTerm
    Licenses that let creators share work with set permissions
  • DebuggingTerm
    Finding and fixing errors
  • Syntax errorTerm
    Code that breaks the language's rules
  • Logic errorTerm
    Code that runs but gives wrong results
  • Run-time errorTerm
    An error that happens while the program is running
  • TestingTerm
    Running a program with chosen inputs to check behavior
  • PseudocodeTerm
    Informal, language-independent description of an algorithm
  • FlowchartTerm
    A diagram of an algorithm's steps
  • Event-driven programmingTerm
    Code that responds to user actions or messages
  • SimulationTerm
    A program that models a real-world system

Download this deck

Want paper cards? Paste the plain-text download into the flashcard maker.