
The building blocks of algorithms - Khan Academy
By understanding algorithms, we can make better decisions about which existing algorithms to use and learn how to make new algorithms that are correct and efficient. An algorithm is made up of three …
Expressing an algorithm | AP CSP (article) | Khan Academy
Expressing an algorithm in a flow chart allows us to visualize the algorithm at a high level, plus it forces us to think very carefully about sequencing and selection.
Recursive factorial (article) | Algorithms | Khan Academy
The typical examples are computing a factorial or computing a Fibonacci sequence. Recursion is a powerful tool, and it's really dumb to use it in either of those cases.
Repetition in programming | AP CSP (article) | Khan Academy
Course: AP®︎/College Computer Science Principles > Unit 3 Lesson 8: Repetition
What is modular arithmetic? (article) | Khan Academy
i.e. if we were looking at 5 mod 3 we would start at 0 and go through 5 numbers in a clockwise sequence, (1,2,0,1,2) but in the example we have -5 mod 3, so we start at 0 and go through 5 …
Analysis of insertion sort (article) | Khan Academy
In general, when one analyzes algorithms, n is going to be the size of the input. For an array the size of the input is based on the number of elements in the array (each element has some fixed size). For …
Merge sort algorithm overview (article) | Khan Academy
In the next challenge, you'll focus on implementing the overall merge sort algorithm, to make sure you understand how to divide and conquer recursively. After you've done that, we'll dive deeper into how …
Khan Academy
Khan Academy ... Khan Academy
Lossless bit compression (article) | Khan Academy
That's the beauty of Huffman coding: the algorithm gives us a way to come up with a set of binary codes for a given sequence that ensures the data can be reconstructed unambiguously and reliably.
Improving efficiency of recursive functions - Khan Academy
Recursion can be an elegant way to solve a problem, and many algorithms lend themselves to recursive solutions. However, recursive algorithms can be inefficient in terms of both time and space. We'll …