Programs related to the field of Computer Science are expessed here. More on Computer Science is at the following link: https://www.pinterest.com/HamedShahHosseini/
- Determinant from scratch with Python by converting matrix to triangular one.
- Cramer's rule for solving a system of linear equations.
- Matrix inversion by the cofactor matrix from scratch in Python.
- Matrix inversion by Gauss-Jordan elimination from scratch in Python.
- Fast Fourier Transform (FFT), one-dimensional, from scratch in Python. Also, Discrete Fourier Transform (DFT) from scratch is also included.
- Divide and Conquer: Quicksort from scratch in Python.
- Dynamic Programming: Fibonacci numbers in Python.
- Singly Linked Lists from scratch with Python. An example is also given to implement a stack having functions: push and pop.
- Complex numbers: introduction. Here, we review complex numbers in both rectangular and polar forms by reminding Euler's formula and De Moivre's formula. Also, we review doing arithmetic for complex numbers in Python.
- Absolute and relative errors are reviewed. When we don't know the true value, we may use approximate value in measuring the mentioned errors. A Python example is also provided.
- Root finding, Bisection method: It is a bracketing method to find one root of a continuous function, given the interval [a,b] in which the root exists. It is assumed that f(a)f(b)<0.
- Root finding, False Position method: This root finding method is also a bracketing method with the same assumptions we make for the bisection method. However, it is usually faster than the bisection method.
- Root finding, Fixed Point Iteration: This is an open method such that it starts by an initial guess of the root, and then it uses an iteration to get closer to the real root.
- Root finding, Secant method: We give two initial guesses of the root. Then, the method creates a secant line which intersects the x-axis at a value that is usually a better estimate of the root.