Compsci 149s, Fall 2011, Syllabus



Compsci 149s, Fall 2011, Syllabus

Compsci 149s, Fall 2011, Syllabus

Syllabus

Problems are roughly sorted by difficulty. Problems are usually related to material covered during the lecture; however, there are usually one or two unrelated problems thrown in as well. Read this page to figure out how to test your solutions. Submit your solutions via email to hewner at cs dot duke dot edu. Problems turned in late will receive reduced credit.

Contents:





Week 0 (August 29th): Intro/Greedy

Topics:

Assignment:

Due 5PM Monday, September 5th: Do at least two problems from the current problem set, and one problem from next week's set.



Week 1 (September 5th): Graphs 1

Topics:

Assignment:

Due 5PM Monday, September 12th: Do at least two problems from the Week 1, and one problem from the Week 2 Set. For those new to graph theory, we recommend KingdomXCitiesandVillagesAnother.



Week 2 (September 12th): Graphs 2

Topics:

Assignment:





Week 3 (September 19th): In-Class Practice / TopCoder SRM 519

Topics:

  • During this class period we will not focus on a specific topic, but we will break into groups to work on the problem set.
  • The class will be followed by SRM 519. Problems from the SRM will count towards problems solved for this problem set.

Assignment:





Week 4 (September 26th): Graphs 3

Topics:

Competitions:

Assignment:

Due 5PM Monday, October 3rd: Do at least two problems from this week's set, and one problem from next week's set. We suggest looking at the Fibonacci and combination problems.



Week 5 (October 3rd): Dynamic Programming 1

Topics:

  • Intro to dynamic programming
  • (optional) TopCoder dynamic programming introduction: Part 3
  • (Notes to be posted.)

Competitions:

Assignment:





Week 6 (October 10th): Fall Break / Max Flow (Optional)

Topics:

Competitions:

Assignment:

Enjoy fall break! If you want to do a few more problems, we suggest either:
  1. Working on more of the dynamic programming problems above, if you are not so familiar with dynamic programming.
  2. For more advanced students, solving some of the max flow problems below would be helpful.




Week 7 (October 17th): Dynamic Programming 2 / Math 1

Topics:

  • More dynamic programming
  • Bitmasking
  • Probability
  • Notes

Competitions:

  • ACC Scrimmage - October 23rd, 2011, 1PM to 6PM (Problem set here.)

Assignment:





Week 8 (October 24th): Math 2

Topics:

  • BigInteger
  • Useful mathematical algorithms from the library
  • Dot/cross products
  • Polygon area
  • Convex hull
  • (Notes to be posted.)

Competitions:

  • TopCoder SRM 522 - October 26th, 2011, from 9PM to 11:30PM
  • ACC Scrimmage 2 - October 30th, 2011, 1PM to 6PM

Assignment:





Week 9 (October 31st):

Competitions:





Week 10 (November 7th): Intro to Ants

Notes:

Assignment:

  • Final Ants project requirements (due last day of class) on blackboard
  • Choose your Ants team
  • Get the ants environment set up (you can start here)
  • Write ants that can at least search for food (if you're writing in Java or Python, go through the whole tutorial)
  • Submit your code/team members via blackboard

Week 11 (November 14th):

Notes:





Week 12 (November 21st):





Week 13 (November 28th):

Course Evaluation for non-registered students

Notes:

Assignment:

  • Sumbit final Ants project by SUNDAY NIGHT (before 8am on Monday)




Read full article from Compsci 149s, Fall 2011, Syllabus


No comments:

Post a Comment

Labels

Algorithm (219) Lucene (130) LeetCode (97) Database (36) Data Structure (33) text mining (28) Solr (27) java (27) Mathematical Algorithm (26) Difficult Algorithm (25) Logic Thinking (23) Puzzles (23) Bit Algorithms (22) Math (21) List (20) Dynamic Programming (19) Linux (19) Tree (18) Machine Learning (15) EPI (11) Queue (11) Smart Algorithm (11) Operating System (9) Java Basic (8) Recursive Algorithm (8) Stack (8) Eclipse (7) Scala (7) Tika (7) J2EE (6) Monitoring (6) Trie (6) Concurrency (5) Geometry Algorithm (5) Greedy Algorithm (5) Mahout (5) MySQL (5) xpost (5) C (4) Interview (4) Vi (4) regular expression (4) to-do (4) C++ (3) Chrome (3) Divide and Conquer (3) Graph Algorithm (3) Permutation (3) Powershell (3) Random (3) Segment Tree (3) UIMA (3) Union-Find (3) Video (3) Virtualization (3) Windows (3) XML (3) Advanced Data Structure (2) Android (2) Bash (2) Classic Algorithm (2) Debugging (2) Design Pattern (2) Google (2) Hadoop (2) Java Collections (2) Markov Chains (2) Probabilities (2) Shell (2) Site (2) Web Development (2) Workplace (2) angularjs (2) .Net (1) Amazon Interview (1) Android Studio (1) Array (1) Boilerpipe (1) Book Notes (1) ChromeOS (1) Chromebook (1) Codility (1) Desgin (1) Design (1) Divide and Conqure (1) GAE (1) Google Interview (1) Great Stuff (1) Hash (1) High Tech Companies (1) Improving (1) LifeTips (1) Maven (1) Network (1) Performance (1) Programming (1) Resources (1) Sampling (1) Sed (1) Smart Thinking (1) Sort (1) Spark (1) Stanford NLP (1) System Design (1) Trove (1) VIP (1) tools (1)

Popular Posts