GithubHelp home page GithubHelp logo

cs160's Introduction

Problem Solving with Algorithms and Data Structures

Setting up Your Environment

Weekly Goals

  • Week of August 31

    • Python Review -- Shakespear and his Monkeys
    • Write a new MSDie class which can represent more than numbers on each side. Hint: The constructor should take a list of values as a parameter.
    • A pythonic way of protecting data properties
    • Add a Cup Class that can roll multiple dice.
    • Algorithms for Random Numbers
      • algorithm 1: middle-Square
      • algorithm 2: Multiplicative Linear Congruential Generators
      • algorithm 3: Fibbonacci
    • What makes for a good pseudorandom number generator?
    • Assignment: Do practice1 for Friday
    • Assignment: Do practice2 for Monday
  • Week of Sept 5

    • Discussion and finishing up Random lab -- Hand in on Wednesday
    • Introduce Algorithm Analysis ideas
  • Week of

    • Questions on part 1 of the crazy 8 assignment
      • Making attributes read only
      • See here for visualization:
      • A "Fancy" python trick for making simple read only classes
    • Finish up finding the longest sequence
    • Inheritance
    • Discuss and start part 2 of Crazy 8's
    • More on Big-O analysis -- Read Chapter on Analysis
  • Week of

    • Anagram Detection Algorithms And Big-O
    • Stacks -- Read Stacks, Queues and Lists
    • Friday - Brad is at SIGCSE in Memphis
    • Be ready to try your Player classes Monday March 7
  • Week of

    • Introducing the Queue
    • Airplane boarding simulator
    • Crazy 8's Tournament?
    • Project 2: Word Ladders (Queues of Stacks!!?!)
    • Lists and their implementation
  • Week of

    • Finish linked list implementation
    • Compare our implementation with Python's implementation
    • Wednesday exam
      • Chapters 1 - 3
      • Classes - implementing a simple class
      • Big O notation and algorithm analysis
      • Queues
      • Stacks
      • Linked lists
  • Week of

    • Compare Python implementation of lists with our linked lists
    • Recursion - Read Recursion through the Three Laws section
    • Recursive Trees
  • Week of

    • The end of the world, with towers of Hanoi
    • State Space Problems and recursion
    • Start the water jug project - Due
    • Searching algorithms
  • Week of

    • Hash Functions and making hash tables
    • Sorting
    • You are responsible for the entire sorting and searching chapter
  • Week of

    • Finish sorting
    • Introduction to Trees -- Read the sections on tree representations
    • Compression with Trees
    • Guest lecture on Wednesday
  • Week of

    • Tree Traversals
    • Finish up compression example
    • Binary Search Trees, add nodes
  • Week of

    • Binary Search Trees, deleting a node
    • Introduction to Graphs and Graph representations
    • Friday is Research Symposium Day
  • Week of

    • Breadth First Search
    • Depth First Search
    • Dijkstra's Algorithm
    • Review

cs160's People

Contributors

bnmnetp avatar bnmtest avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.