Computer Science 101: Master the Theory Behind Programming | Kurt Anderson | Skillshare

Computer Science 101: Master the Theory Behind Programming

Kurt Anderson, Computer Scientist, Multi-Media Designer

Play Speed
  • 0.5x
  • 1x (Normal)
  • 1.25x
  • 1.5x
  • 2x
54 Videos (7h 16m)
    • Binary Number Overview

      11:51
    • Binary to Deca and Back

      9:16
    • Time Complexity Introduction

      2:12
    • Math Refresher: Logarithmic Functions

      11:07
    • Math Refresher: Factorial Functions

      3:19
    • Math Refresher: Algebraic Expressions

      2:47
    • N-notation

      18:55
    • Big O Notation

      12:58
    • Real World Big-O Example

      9:51
    • How is Data Stored

      8:38
    • Fixed Array Introduction

      5:09
    • Fixed Array Run Times

      12:23
    • Binary Search Algorithm (Fixed Array Sorted Search)

      9:59
    • Circular Arrays

      8:00
    • Dynamic Arrays

      15:51
    • Array Review

      7:57
    • Array Real World Examples

      5:42
    • Nodes

      4:19
    • Linked List

      13:36
    • Linked List Run Times

      14:59
    • Doubly Linked Lists

      8:07
    • Tail Pointer

      5:14
    • Linked List Review

      3:31
    • Linked List Real World Examples

      3:00
    • Stacks

      9:41
    • Stack Example

      11:05
    • Queues

      8:48
    • Queue Examples

      9:42
    • Queue and Stack Run Times

      6:03
    • Stack and Queues Real World Examples

      7:01
    • Sorting Algorithm Introdcution

      1:40
    • Bubble Sort

      10:12
    • Selection Sort

      9:49
    • Insertion Sort

      9:03
    • Quick Sort

      14:38
    • Quick Sort Run Times

      10:31
    • Merge Sort

      11:57
    • Merge Sort Run Times

      7:39
    • Stable vs Nonstable

      6:34
    • Sorting Algorithm Real World Examples

      4:01
    • Basics of Trees

      7:37
    • Binary Search Tree

      8:34
    • BST Run Times

      7:36
    • Tree Traversals

      13:04
    • Tree Real World Examples

      4:29
    • Heap Introduction

      4:07
    • Heap Insertion Sort

      11:34
    • Heap Real World Examples

      6:58
    • Introduction to Graphs

      3:17
    • Basic Types of Graphs

      10:28
    • Graph Terminology

      11:40
    • Depth First Search

      6:36
    • Breadth First Search

      6:22
    • BFS and DFS Run Times

      3:12
43 students are watching this class

About This Class

Master the Theory to Becoming a Good Programmer! 

If you're looking to learn the theory that makes great programmers, you've come to the right place! This is perfect for anyone interested in learning the fundamentals to Computer Science Theory. 

No Previous Experience Necessary! 

Computer science and technology are often thought of as things only for "analytical minds". I believe however that technology and it's theory are for everyone. So I designed this course to teach each topic in a variety of easy to digest ways. Through these multiple reinforcing steps, I believe anyone can follow along and succeed! 

Why is the Theory of Programming Important? 

Understanding Computer Science theory is what sets the Great programmers from the average ones. Programming theory is something that transcends a single programming language. It gives you skills and techniques you can apply to any programming language you touch. Learning the theory behind programming is just as important, if not more important than learning a singular programming language like Java or C++.

Programming is all about problem solving. Analyzing a problem, and being able to figure out a way that a computer can help with that problem. Computer Science is the practice of this analysis process. It goes over the techniques and knowledge necessary to design efficient and sustainable code. 

In this lesson we will be covering: 

- N Notation

- Big O Notation

- Analyzing Algorithm Efficiency

654

Students

1

Project

  • --
  • Beginner
  • Intermediate
  • Advanced
  • All Levels
  • Beg/Int
  • Int/Adv

Level

Community Generated

The level is determined by a majority opinion of students who have reviewed this class. The teacher's recommendation is shown until at least 5 student responses are collected.

Kurt Anderson

Computer Scientist, Multi-Media Designer

Hello, I'm Kurt.

I am a self-taught multi-media designer and computer scientist who has helped bring the creative vision of clients all around the world to life. Having 8+ years of experience in the Adobe Production Suite has given me a strong tool-set to create anything from videos to websites. Along with this, having a degree in Computer Science has given me a strong analytical mind for dealing with complex problems. Through these two disciplines I create a unique blend of efficiency...

See full profile

Report class