Teaching Tree
New
Subject
Computer Science
Ruby Programming
Math
Add
Login
Sign Up
Online Knowledge: Rapid and Unconstrained
Definition of Artificial Intelligence
Reflex Agents
Types of Learning
Supervised Learning
Reinforcement Learning
Unsupervised Learning
Markov Models
Markov Reward Process
POMDPs
Hidden Markov Models (HMMs)
Markov Chain Monte Carlo
Selection Sort Time-Efficiency
Theta Notation
Insertion Sort Time-Efficiency
Huffman Trees
Algorithm Introduction
3D Graphics in Browsers
Fully vs Partially Observable
Stochastic Environments
Application of AI
Perception-Action Cycle
Deterministic Environments
Benign Environments
Ascii Tables
Completeness of Search
A* Search Cost Path
Optimistic Heuristics
Graph Search
Storage Requirements of Search
CSS Syntax
Limitations of Search
N-Squared Complexity
Constant Time
Logarithmic Time
Simple Pruning
2-3-4 Trees
2-3-4 Tree Time-Efficiency
Sentinels
Disjunctive Concepts
Abstract Data Types
Interface of a Class
Private Methods
Lists
Polymorphism
Inheritance
Objects
Constraint Network
Optimization Under Constraints
Hard Constraint Satisfaction
Encoded Contexts
Subclass and Superclass
Window System Interaction
GLUT
Class Hierarchy
Primary Keys
Cardinality
Database Management Systems
Redundancy
Blind Search
Heuristic Search
Iterative Deepening Depth First Search
Depth-Bounded Search
IDDFS Search Tree
OpenGL
Combining Translations and Rotations
Normal Transformations
3D Rotation Matrix
Graphics API
Translation in a Matrix
General Translation Matrix
Perspective Projection Matrix
Coordinate Frame Rotations
Axis-Angle Formula
3D Rotations
2D Rotations
2D Rotation Matrix
Shear
Purpose of Transformations
Orthonormal Bases
Rotations
Class Variables
Constructors
Static Fields
Normals
Non-Commutativity
Rotation About Axis
Fields
Iterative Deepening Complexity
Agents
Combining Transformations
Strongly Connected Graphs
Undirected Graphs
Fragment Shader
Vertex Shader
Game Tree Search
Hash Codes
Multi-dimensional Arrays
Optimizing Game Tree Search
Booleans
Viewing in OpenGL
Initializing Shaders
Object Types vs. Data Types
Heapsort
Kruskal's Algorithm
Binary Trees
Big O Sets
Dictionaries
Mouse Motion in GLUT
List Subclasses
New OpenGL Drawing
OpenGL Drawing
GLUT 3D Primitives
Variable Lifetimes
Constants
Initializers
Automatic Array Construction
Preorder Traversal
Packages
Tree Definition
Building Packages
Tree Traversals
Rooted Trees
Exceptions
Postorder Traversal
Level-order Traversal
Priority Queues
Binary Heap
Inorder Traversal
Disjoint Sets
Viewing 3D Objects
glOrtho
Orthographic Matrix
Orthographic Projection
Conditionals
Scope
Shaders
Coordinate Frame Transformations
Amortized Running Time
Buffers
Lighting
Selection
Class
Selection Sort
Bucket Sort
Strings
Merge Sort vs. Quicksort
Conditional Loops
Merging
Iterative Functions
Bubble Sort Time-Efficiency
Base Case
Fibonacci Algorithm
gluLookAt
Insertion Sort Code
Linear Time
Merge Sort Time-Efficiency
Bytes
Primitive Types
The Heap
Stack Frames
Quicksort on Arrays
Instantiation
Bucket Sort Time-Efficiency
Abstract Classes
Dynamic Method Lookup
Protected Fields
OpenGL Primitives
Inverting Composite Transforms
Testing Introduction
Data Structure Integrity
Time Complexity
Cocktail Sort
Cocktail Sort Time-Efficiency
String Constructors
Buffer Readers
OpenGL Geometry
Quick-Union Algorithm
Binary Search Time-Efficiency
Phong Illumination Model
Randomized Analysis of Hash Tables
Randomized Analysis
Gouraud Shading
Ray Tracing Code
Specular Reflection
Light Sources
Light Diffusion
Iterative vs. Recursive Functions
Ambient Lighting
Vertex vs. Fragment Shaders
Color
Fragment Shader Transformations
Ray-Object Intersection
Declaring a Class
Matrix Stacks
Splay Trees
Animation in OpenGL
Expression Parsing
Infix vs. Prefix vs. Postfix
Infix to Postfix Conversion
Vertex Transforms
Recursive Ray Tracing
Ray Tracing Acceleration
Ray Intersections on Transformed Objects
Ray-Surface Intersection
Depth Tests
Double Buffering
Instance Variable
Transforms (Open GL)
Memory in Embedded Systems
Aliasing
Chip Manufacturing
Floating Point Numbers
Digital Representation of Voltage
Algorithm Definition
Regular Vs. Associative Arrays
Recursive Backtracking
2-3-4 Tree Deletion
Grid Class
Quicksort on Linked Lists
Splay Tree Rotation
Stream Operations
Map Class
Balancing
Model-based Design
Physical Motion Models
Integrators
Noise Conditioning
Finite State Machines (FSMs)
PHP Syntax
CAN
Heartbeats
Multi-Processor Systems
Global Vs. Local Variables
Box Model (HTML)
Procedural vs Functional Recursion
Vector Class
Set Class
Discrete Systems
Non-deterministic Fsm
Circuit Board Hardware Overview
Serial Communications
Interrupts
Real Time Systems
Watchdog Timers
Pre-emptive Scheduling
Microprocessor Architecture
Components of a System
State Transition Diagram
Synchronizing Clocks
Simple Embedded Operating Systems (sEOS)
Gaussian Mixture Model (GMM)
Try/Catch Blocks
OpenGL Shading
Synchronization
HTML
Huffman Coding
Regularized LS Regression
Convexity of Objective Function
Important Specs For Embedded Systems
Functions of a Processor
Components of a Processor
Memory Mapped I/O
Product Development Lifecycle
V Model of Testing
IDE Tools
Pushdown Automata
Branching Programs
SVG vs Canvas
Physical Layer of Serial Communication
Clock Frequency
Long Tasks
Jitter
Priority Inversion
Dynamic Vs. Static Rtos
HTML5
Multi-state Systems
Time-triggered Hybrid Scheduler
Weighted Center of Mass
OpenGL Lighting
Random Caching Trees
Time Aggregation
Computer Vision
Spectral Clustering
Discretized Models
Microcontroller Architecture
Components of an Embedded System
Renesas Rx62n
Switches
Hardware Delays
Time Trigger Systems
Analog Vs. Digital
Forms
Tcp/ip
Ascii
Embedded System Definition
Microcontrollers Vs. Microprocessors
Components of a Microcontroller
Analog to Digital Conversion
JTAG
Debugger Chips
Counters
State Machines
Special Functions Registers
Super Loops
RTOS Issues
Tries
Java
Object-Oriented Definition
Passing Data into JSON
Nested Objects
Using JSON with PHP
Constructing a Binary Tree
Balanced vs Unbalanced Binary Trees
Occam's Razor
Compiling
Variables
Arrays
Events
Width and Precision
Pseudorandomness
Binary
Floats vs Integers
Limits of Floats and Doubles
Type Casting
Switch Statements
While Loops
Do While Loop
Introduction to C
For Loops
Functions
Bubble Sort
Linear Search
Recursion
Strings and Pointers
Memory Management
The Stack
Pointers
Passing by Pointer
Pointers and Arrays
Buffer Overflow
NOP Sleds
File I/O
Linked Lists
Doubly Linked Lists
LIFO Data Structure
Queue Class
Hash Tables
Compression
Endianness
Bitwise Operators
CSS
PHP
Javascript
Ajax
Get Vs. Post
Asynchronicity
JSON
Assembly Language
Pre-processing
Object Oriented Programming
Asymptotic Analysis
Merge Sort
Quicksort
Quicksort Analysis
Randomized Quicksort Analysis
Symbol-table Problem
Direct Access Table
Hashing
Chaining
Load Factor of a Hash Table
Division Method
Multiplication Method
Open Addressing
Universal Hashing
Perfect Hashing
Markov's Inequality
Dynamic Order Statistics
Augmenting Data Structures
Interval Trees
Amortized Analysis
Hash Table Size
Structs
Dynamic Tables
Accounting Method
Potential Method
Competitive Analysis
Insertion Sort
Big O Notation
Algorithmic Efficiency
Big Omega Notation
Asymptotic Bounds
Randomized Quicksort
Merge Sort Code
If Else Statement
Stack vs. Heap
Self-Organizing Lists
On-line Algorithm
Dynamic Programming
Longest Common Subsequence
Dynamic Programming Substructure
Overlapping Subproblems
Graphs
Digraphs
Adjacency Matrix
Adjacency List
Minimum Spanning Trees
Minimum Spanning Tree Substructure
Prim's Algoritm
Parallel Algorithms
Dynamic Multi-threading
Multithreaded Algorithms
Size of Data Types
Composition of a Byte
Representation of Negative Numbers
Floats and Doubles
Composition of Arrays
Generics in C
Swapping in C
L Search
Stacks
Stack Implementation
Activation Records
Python (language)
Definition of Machine Learning
Cocktail Party Problem
Linear Regression
Parameters of a Learning Algorithm
Search Algorithms
Gradient Descent
Stochastic Gradient Descent
Parametric Learning Algorithms
Non-parametric Learning Algorithms
Locally-weighted Regression
LOESS
Justification for Least-squares Regression
Binary Classification
Logistic Regression Model
Exponential Family of Distributions
GLMs
Generalized Linear Models
Multinomial
Generative Learning Algorithms
Gaussian Discriminant Analysis
Naive Bayes
Neural Networks
Choosing Linear Separators
Geometric Margins
Maximizing Margins
Support Vector Machines
Lagrange Multipliers
Karush-Kuhn-Tucker Conditions
KKT Conditions
Kernels
Coordinate Assent Algorithm
Soft Margin SVM
SVM Dual Problem
Bits
Data Types
Malloc
Dynamic Memory Allocation
Tracking Availability in The Heap
Heap Handles
Register Sets
Heap Manager
Stack Pop
Bias-Variance Tradeoff
Empirical Risk Minimization
Uniform Convergence Bound
Error Bound
Model Selection
Hold-Out Cross Validation
K-fold Cross Validation
Feature Selection
Bayesian Statistics and Regularization
Online Learning
K-Means Clustering
Density Estimation
EM Algorithm
Mixture of Gaussians
Text Clustering
Factor Analysis
Dimensionality Reduction
Principal Component Analysis (PCA)
PCA Applications
Latent Semantic Indexing (LSI)
Singular Value Decomposition (SVD)
Independent Component Analysis (ICA)
Optimal Value Function
Policy Iteration
Continuous State MDPs
State-Action Rewards
Finite Horizon MDPs
Linear Quadratic Regulation (LQR)
Linearizing a Non-Linear Model
Debugging Reinforcement Learning Algorithms
Differential Dynamic Programming
Kalman Filters
Linear Quadratic Gaussians (LQGs)
Policy Search Algorithms
Effectiveness of Policy Search
Pegasus Algorithm
Linear Model
Perceptron Learning Algorithm
Pocket Algorithm
Nonlinear Classifiers
Nonlinear Transformation
Error Measures
Training vs Testing
Dichotomies
The Growth Function
Break Points
Hoeffding Inequality
VC Inequality
VC Dimension
VC Dimension of Perceptrons
Approximation-Generalization Tradeoff
VC Analysis vs. Bias-Variance
Overfitting
Deterministic Noise
Regularization
Weight Decay
Choosing a Regularizer
Validation vs. Regularization
Validation
Kernel Trick
Mercer's Condition
Radial Basis Functions
Nearest-Neighbor Method
Lloyd's Algorithm
Radial Basis Functions vs. Neural Networks
Support Vectors
Mixture of Naive Bayes
Learning Feasibility
Data Snooping
Graphics Definition
Ray Casting
Ray Tracing
Projection (Graphics)
Rendering Pipeline
Graphics Pipeline
Vector Processing
Rasterization
Coordinate Frames
Vector Spaces
2D Bases
Implicit Curves
Normal Vectors
Parametric Curves
Shading Models
Lambertian Shading Model
Lambert's Cosine Law
Reflection
Diffuse Shading
Diffuse vs Phong Shading
Glossy Reflection
Matrix Multiplication
Gaussian Elimination
Vector Transformations
Scaling Transformation
Linear Transformations
Shearing
Translation
Homogenous Coordinates
Texture Mapping
Texture Arrays
Volumetric Texturing
Linear Interpolation
Perlin Noise
Spherical Texture Mapping
Triangle Texture Mapping
MIP Mapping
Bump Mapping
Displacement Mapping
Environment Mapping
Parallel Projection
Perspective Projection
Viewing Frustum
Windowing Transformation
Viewing Frustum Transformation
Homogeneous Transformations
Projective Transformations
Clipping
Sutherland-Hodgman Algorithm
Weiler-Atherton Algorithm
Culling
Z-Buffers
Edge Tables
Diffuse Lighting on Vertices
Phong Shading
Blinn-Phong Model
Direct vs Global Lighting
Radiosity
Form Factors
Shadows
Hard vs Soft Shadows
Shadow Maps
Shadow Volumes
Stencil Buffers
Capping
Fake Shadows
Shadow Feelers
Refraction
Snell's Law
Instancing
Constructive Solid Geometry
Efficient Ray Tracing
BSP Trees
Goal Based Agents
Search Problems
State Spaces
Search Trees
State Graph Vs. Search Tree
Breadth-First Search
DFS vs BFS
Uniform Cost Search
Search Heuristics
A* Search
Heuristic Dominance
Constraint Satisfaction
Constraint Graphs
Filtering (search)
Forward Checking
Arc Consistency
K-consistency
Tree-Structured CSPs
Tree Decomposition
Adversarial Search
Adversarial Games
Minimax Search
Evaluation Functions
Minimax Pruning
Alpha-beta Pruning
Expectimax Search
Probabilities in Expectimax Search
Agent Preferences
Utility Scales
Non-deterministic Search
Markov Decision Process (MDP)
Bellman Equations
Value Iteration
Passive Reinforcement Learning
Model-based Learning
Temporal-difference Learning
Active Reinforcement Learning
Joint Distributions
Marginal Distribution
Probabilistic Inference
Probabilistic Models
Conditional Independence
Bayes' Nets
Bayes' Net Inference
Rejection Sampling
Bayes' Net Likelihood Weighting
Particle Filtering
Dynamic Bayes Nets (DBNs)
State Path Trellis
Viterbi Algorithm
Estimate Smoothing
Laplace Smoothing
Feature Vectors
Linear Classifier
Binary Decision Rule
Binary Perceptron
Multiclass Perceptrons
Apprenticeship Learning
Master Method
Divide and Conquer
Binary Search
Bottom-up Algorithm
Strassen's Algorithm
Comparison Sorting
Decision Trees
Lower Bounds on Decision Tree Sorting
Counting Sort
Linear-time Sorting
Depth-First Search
Recursion Tree Method
Stable Sort
Radix Sort
Order Statistics
Randomized Divide and Conquer
Worst-case Linear Time Order Statistics
Binary Search Trees
Randomly Built BST's
BST Sort
Randomized BST Sort
Jensen's Inequality
Balanced Search Trees
Red-black Trees
Red-black Rotations
Red-black Insertion
Skip Lists
Skip List Search Cost
Backward Analysis
Paths
Shortest Path
Shortest Path Weight
Triangle Inequality
Dijkstra's Algorithm
Bellman-Ford Algorithm
Linear Programming
Difference Constraints
All-pairs Shortest Paths
Floyd-Warshall Algorithm
Transitive Closure
Johnson's Algorithm
Cache-oblivious Algorithms
Please select a topic from the list.
...or discover concepts using
The Tree
(beta)
Algorithms and Data Structures
Time Complexity
Asymptotic Analysis
Big O Notation
Big Omega Notation
Master Method
Theta Notation
Asymptotic Bounds
Algorithmic Efficiency
Linear-time Sorting
Linear Time
Logarithmic Time
Constant Time
N-Squared Complexity
Insertion Sort
Insertion Sort Time-Efficiency
Insertion Sort Code
Heapsort
Selection Sort
Selection Sort Time-Efficiency
Divide and Conquer
Binary Search
Merge Sort
Merge Sort Time-Efficiency
Merge Sort Code
Show More
Artificial Intelligence and Machine Learning
Definition of Machine Learning
Definition of Artificial Intelligence
Types of Learning
Application of AI
Supervised Learning
Unsupervised Learning
Reinforcement Learning
Learning Feasibility
Agents
Reflex Agents
Goal Based Agents
Cocktail Party Problem
Search Problems
Perception-Action Cycle
State Spaces
Linear Regression
Search Trees
Parameters of a Learning Algorithm
State Graph Vs. Search Tree
Search Algorithms
Completeness of Search
Blind Search
Gradient Descent
Deterministic Environments
Show More
Embedded Systems
Aliasing
Analog to Digital Conversion
Analog Vs. Digital
CAN
Chip Manufacturing
Circuit Board Hardware Overview
Clock Frequency
Components of a Microcontroller
Components of a Processor
Components of a System
Components of an Embedded System
Counters
Debugger Chips
Digital Representation of Voltage
Discrete Systems
Discretized Models
Dynamic Vs. Static Rtos
Embedded System Definition
Finite State Machines (FSMs)
Floating Point Numbers
Functions of a Processor
Hardware Delays
Heartbeats
IDE Tools
Show More
Graphics and Animation
Graphics Definition
Ray Casting
Ray-Surface Intersection
Ray-Object Intersection
Ray Tracing Acceleration
Ray Intersections on Transformed Objects
Ray Tracing
Projection (Graphics)
Rendering Pipeline
Graphics Pipeline
Shaders
Vector Processing
Buffers
Rasterization
Ray Tracing Code
Coordinate Frames
Orthonormal Bases
Vector Spaces
Graphics API
Initializing Shaders
Window System Interaction
2D Bases
Mouse Motion in GLUT
OpenGL
Show More
Intro to Computer Science and Programming Languages
Bits
Bytes
Binary
Data Types
Algorithm Introduction
Primitive Types
Compiling
Size of Data Types
Variables
Arrays
Events
Strings
If Else Statement
Conditional Loops
Composition of a Byte
Width and Precision
Floats vs Integers
Limits of Floats and Doubles
Representation of Negative Numbers
Type Casting
Constants
Initializers
Automatic Array Construction
Multi-dimensional Arrays
Show More
Web Development
HTML
HTML5
CSS Syntax
CSS
Forms
Box Model (HTML)
PHP
PHP Syntax
Javascript
Ajax
Get Vs. Post
Asynchronicity
Passing Data into JSON
Using JSON with PHP
JSON
Nested Objects
SVG vs Canvas
3D Graphics in Browsers