# Chapter 14 - Discrete Math, Algorithms, Data Structures, and Not Sucking at Programming ™* #

[TODO] Directed Acyclic Graphs

[TODO] Finite State Machines

[TODO] e-graphs? https://egraphs-good.github.io

[TODO] http://courses.csail.mit.edu/6.851/

***With some complexity analysis too.**

[TODO]

https://www.mattkeeter.com/blog/2021-03-01-happen/

[TODO] I also have discreete math in the chapter 11, math… not sure what do do about this…

Truth tables, binary, logical equlivencies, propositional logic,

Sets, functions, relations, recurrence, induction, combonation, graphs, isomorphsm,

Sets are a well-defined collection of distinct objects. A set is represented in two ways, Rooster form or Set builder form.

### Rooster form:- #

In this form we show all the elements in a set in curly brackets. For example: A set of odd numbers is {1, 3, 5, 7, 9, …) A set of animals can be {Dog, Cow, Cat, Lion}

### Set Builder form:- #

In this form we show all the elements by using a property that all the elements of the set follow. For example: A set of even numbers upto 10 is {x | x is even and x <= 10} which is read as x where x is even and less than or equal to 10.

### Operations on Sets:- #

#### Unions:- #

A Union of two sets is a set which contains all elements of both the sets. A Union of set A and set B would be represented as, A⋃B.

For example: The Union of Set A = {1,3, 5, 6} and Set B = {1, 2, 4, 6} is

A ⋃ B = {1, 2, 3, 4, 5, 6}

## Complexity analysis #

Big O Notation - explained as easily as possible (that computer scientist)

More cool videos like this can be found at https://www.youtube.com/c/Musicombo/videos

+recursion analysis, P vs. NP (YouTube)

### Brute Force #

## Data structures #

trees, hashtables/maps, stacks

## Practice #

Fib, some pracice logical equliv, base conversion algo, overlapping lines, matrix multiplication

## Locality #

### Temporal #

### Spatial #

## Dynamic Programming #

Heads up, this is a 5 hour video: