We will be conducting a midterm review session this Sunday, 10/26, from 4-6 PM in Gates B12. If you enter in the Gates basement, this is down the hallway to the right, on your left. The doors at the top of the stairs will be locked, but can be opened with your SUID.
Instead of the midterm review session being a lecture-style session, we'll be there to help answer any questions that you might have. As a result, the session works best for everyone if you come prepared. If you'd like to come to the review, the best thing you can do is work out some of the practice midterm problems, or any of the programming problems in the book, and bring any specific questions you have for us to work out. If everyone brings questions, then everyone there will benefit from everyone else's collective effort. In our experience, this helps prepare students for the midterm better than just running through more practice problems.
Some students have been having problems with both the Mac and PC versions of the Boggle demo app included in the sample code. The starter files for the assignment have been updated with working copies of the demo, or you can download the demo apps directly by clicking one of the links below:
If you have any further problems with the demo app after trying the new versions, please feel free to contact Dave.
The CS106X Midterm is just over two weeks away. The midterm will take place on Tuesday, October 28th from 7:00pm to 9:00pm and will be held in Hewlett 200. If you have an unavoidable conflict with the midterm time, we'll be happy to find an alternate time for you to take the exam. If you would like to schedule an alternate midterm, please send an e-mail to Tom and Dave specifying all times on October 28th and 29th you can take the exam. You have until Monday, October 20th at 5:00pm to request an alternate midterm.
There is a correction made on Handout #16 regarding mapping functions and the CS106X library. The handout states that all of the CS106 classes have the ability to map functions to the collection. However, with the current set of CS106 libraries installed for this quarter, the mapping functions are only available for the Map and Set classes. The handouts has been changed to correct for this error and has been uploaded to the website. We apologize for the confusion.
There has been a few questions regarding Assignment #1 and what dimensions should be used if the user wants a randomly generated environment. For the purposes of this assignment, we're fine with any reasonable dimension you choose (a 1x1 grid would lead to very boring simulations!) The sample program uses a 55x70 grid; you may choose to use that if you wish.
In addition, in terms of how assignments will be graded, we will be doing the same thing as we've done in CS106A and use the bucket system to grade both functionality and style. For more information regarding what factors are taken into grading, please visit the program grading portion of the website.
- Two quick announcements:
- You can start signing up for section at http://cs198.stanford.edu/. You have until Sunday at 5:00pm to submit your preferences.
- If you have signed up for both CS106X lecture and CS106X section in Axess, you will need to re-register for the class and remove the section from your study list. You can do this by a) dropping both CS106X lecture and section from your study list, b) adding the CS106X lecture (officially section "01 LEC"), and c) skipping over the section asking you to select an additional section. You should be able to submit without having to specify the additional section. If you have any questions or problems, please contact Tom or Dave.
- Welcome to the CS106X! Class meets MWF from 9:00am to 9:50am in 420-041 (basement of the Pyschology/Math building) starting on September 22nd. The site looks bare right now, but we'll be filling it in with more information over the next week in preparation for the first day of class. So sit back, relax, and enjoy the last few days of summer before school starts again!
- Assignment 0 Files [Mac]
- Assignment 0 Files [PC]
- Assignment 1 Files [Mac]
- Assignment 1 Files [PC]
- Assignment 1 Sample File [PC & Mac]
- Assignment 2 Files [Mac]
- Assignment 2 Files [PC]
- Assignment 3 Files [Both]
- Assignment 4 Files [Both]
- Assignment 5 Files [Both]
- Assignment 6 Files [Both]
- HO01 Course Information
- HO02 Early Programming
- HO03 Assignment #0
- HO04M Using Xcode
- HO04P Using Visual Studio
- HO05 C++ Strings
- HO06 Section Handout #1
- HO06S Section Solutions #1
- HO07 Library Reference
- HO08 Pointers
- HO09 Assignment #1
- HO10 Good Programming Style
- HO11 Coding Standards
- HO12 Decomposition
- HO13 CS106 Libraries
- HO14 Section Handout #2
- HO14S Section Solutions #2
- HO15 Assignment #2
- HO16 Iterators and Mapping
- HO17 Section Handout #3
- HO17S Section Solutions #3
- HO18 Assignment #3
- HO19 Recursive Backtracking
- HO20 Linked Lists
- HO21 Section Handout #4
- HO21S Section Solutions #4
- HO22 Practice Midterm Questions
- HO22S Practice Midterm Solutions
- HO23 Section Handout #5
- HO23S Section Solutions #5
- HO24 Assignment #4
- HO25 Section Handout #6
- HO25S Section Solutions Handout #6
- HO26 Midterm Solutions
- HO27 Section Handout #7
- HO27S Section Solutions #7
- HO28 Assignment #5
- HO29 Huffman Encoding
- HO30 Section Handout #8
- HO31 Assignment #6
- Calendar/Syllabus
- Lecturer/TA Office Hours
- CS106 Tresidder LaIR Office Hours
- C and C++ Standard Library Reference
- Dinkumware C++ Library Reference
- Sept 24 - Diving
- Sept 26 - Big Game (enums/structs)
- Oct 6 - Stanford Blurb (Map, Queue, Stack)
- Oct 8 - Birthday (Set)
- Oct 8 - Stanford Blurb 2 (Set, iterator, mapping functions)
- Oct 10 - Recursion 1 (Fact, Palidrome, Subsets, C)
- Oct 13 - Recursion 2 (Permutations, Anagrams, Hanoi)
- Oct 22 - Sorting (Mergesort)
- Oct 24 - Sorting (Quicksort)
- Nov 7 - TreeMap
- Nov 12 - Lexicon
- Nov 12 - AVL Trees
- Nov 14 - Hashing