quizmajor

Subdecks (1)

Cards (36)

  • Computer programming is the process of designing and writing sets of instructions that a computer can execute
  • The importance of computer programming is that it is a skill that is in high demand and can lead to a high-paying job.
    • Key steps in programming: Problem solving, algorithm design, coding, testing and debugging, maintenance and optimization
  • Types of Software Applications:
    • Desktop applications
    • Web applications
    • Mobile apps
    • Embedded systems software
    • Games
    • System software
  • Give the 8 algorithms
    • Searching Algorithms:
    • Sorting Algorithms:
    • Graph Algorithms:
    • Dynamic Programming:
    • Backtracking Algorithms:
    • Greedy Algorithms:
    • Divide and Conquer Algorithms:
    • String Matching Algorithms:
  • Problem Solving - Identifying the problem to be solved and breaking it down into smaller, manageable subproblems.
  • 2.     Algorithm Design - Developing a logical sequence of steps (algorithm) to solve the problem efficiently and correctly.
  • Coding - Translating the algorithm into a specific programming language by writing code that a computer can understand and execute.
  • Testing and Debugging - Checking the program for errors (bugs) and fixing them to ensure the program behaves as expected.
  • Maintenance and Optimization - Updating and improving the program as needed, optimizing its performance, and adapting it to changes in requirements or technology.
  • two types of searching algorithm 1.Linear - checks each element in a list 2. Binary - searches a sorted array
    • Sorting Algorithms:
    • Bubble Sort - Repeatedly steps
    • Insertion Sort - one element at a time
    • Selection Sort - unsorted portion of the array
    • Merge Sort - Divides the array
    • Quick Sort - element as pivot
    • Graph Algorithms:
    • Depth-First Search - Explores as far as possible
    • Breadth-First Search - Explores all neighbors
    • Dijkstra's Algorithm - shortest path between nodes
    • Minimum Spanning Tree Algorithms (Prim's Algorithm, Kruskal's Algorithm) - Finds the minimum spanning tree of a graph.
  • Dynamic Programming:
    • Breaks down a problem into smaller subproblems
  • Backtracking Algorithms:
    • Systematically searches for a solution to a problem like soduko
  • Greedy Algorithms:
    • Makes a series of choices like huffman coding
  • 1.     Divide and Conquer Algorithms
    Breaks down a problem into smaller subproblems
  • String Matching Algorithms substring within a larger string