240 likes | 269 Vues
This lecture provides an overview of the CS1020 course, including objectives, lecturers, resources, schedules, and assessments.
E N D
CS1020 Data Structures and Algorithms ILecture Note #0 Course Admin (AY2015/6 Semester 2)
Outline [CS1020 Lecture 0: Course Admin]
Module Overview OOP Algorithms Linear Data Structures [CS1020 Lecture 0: Course Admin]
Objectives • With this course, you should be able to: • Use object oriented modeling to formulate solution • Utilize appropriate simple data structures in problem solving • Understand data abstraction • Understand recursion • Understand program efficiency through analysis of algorithms [CS1020 Lecture 0: Course Admin]
Lecturers • Module coordinator • A/P Tan Sun TeckCOM2-03-02 tanst@comp.nus.edu.sg • Sectional Group 2 @ ICube Auditorium • Mr. Aaron Tan Tuck ChoyCOM1-03-12 tantc@comp.nus.edu.sg • Sectional Group 1 @ SR1 [CS1020 Lecture 0: Course Admin]
Module website Resources http://www.comp.nus.edu.sg/~cs1020 [CS1020 Lecture 0: Course Admin]
IVLE https://ivle.nus.edu.sg Resources • Announcements: Check daily • Forums: Use appropriate heading when you post [CS1020 Lecture 0: Course Admin]
CodeCrunch http://codecrunch.comp.nus.edu.sg Resources [CS1020 Lecture 0: Course Admin]
Textbook Resources • International edition, 3rded • Authors:Janet J. Prichard and Frank M. Carrano • Publisher: Pearson • ISBN: 9780273751205 • Available at NUS Co-op @ Forum • Textbooks for loan • For needy students • Please refer to IVLE forum for details Data Abstraction and Problem Solving with Java: Walls and Mirror [CS1020 Lecture 0: Course Admin]
Textbook Resources Promotion period: 11th to 15th January 2016. [CS1020 Lecture 0: Course Admin]
Schedules http://www.comp.nus.edu.sg/~cs1020/1_module_info/sched.html [CS1020 Lecture 0: Course Admin]
Assessments: Overview http://www.comp.nus.edu.sg/~cs1020/1_module_info/desc.html • There will be 6 take-home labs (inclusive of lab #0), 4 graded sit-in labs and a practical exam (PE). • Take-home labs and sit-in labs are held in alternate weeks. Sit-in labs are open-book but electronic devices (eg: labtops and thumb-drives) are not allowed. • Tutorials and labs start in week 3 • Mid-term test and final exam are closed-book (no cheat sheet allowed) [CS1020 Lecture 0: Course Admin]
Laboratory sessions Assessments • See module website for updates • Actual lab session starts from week 3 • A special lab #0 (1%) will be released in week 1 • Familiarize yourself with the UNIX system and vim • Two types of lab session: • Take-home labs • 5 sessions(best 4 out of 5 sessions; total = 4%) • Total: 4% + 1% (lab #0) = 5% • Sit-in labs • 4 sessions, 6% per session • Total: 18% (Best 3 out of 4 sessions) [CS1020 Lecture 0: Course Admin]
Take-home Labs Assessments • 6 take-home labs (including lab #0) • Released on CodeCrunch • Each lab consists of 3 exercises • You should attempt them before attending the lab • Only one of them will be graded • During the lab session, your lab TA will: • Discuss possible approaches • Cover additional syntax (if any) or other related exercises/topics • Lab attendance: 2% • Each take-home lab (except lab #0) is worth 1% • Must be submitted to CodeCrunchBEFORE deadline • Must obtain an ‘A’ for the graded exercise. [CS1020 Lecture 0: Course Admin]
Sit-in Labs Assessments • There are 4 sit-in labs • A sit-in lab is like a mini practical exam to test your programming skills • Each sit-in lab is: • 1 hour 40 minutes in duration and worth 6% • Open book, but limited to printed material only • API will be available on the computer • Your best 3 sit-in labs out of 4 will be chosen • Total: 18% • You will be allowed to take a makeup only if • You missed 2 or more sit-in labs with valid medical certificates or official excuses [CS1020 Lecture 0: Course Admin]
Sit-in Labs: Marking Scheme (1/2) • Correctness: 70 marks • Input: 10% (Correctly read in all input and used them) • Output: 10% (Output format only, not about correct result) • Correctness: 50% (partial credit will be given) • Programming style: 30% • Modularity: 10% • Meaningful comments: 10% • Particulars • A description for each user-defined method • Appropriate pre- and post-conditions • Other comments to explain complex codes • Meaningful/descriptive identifiers:5% • Proper indentation: 5% • Programming Style marks will be given only if you score at least 20 marks for correctness. Assessments [CS1020 Lecture 0: Course Admin]
Sit-in Labs: Marking Scheme (2/2) • Penalties: • 50% will be deducted if the submitted program has syntax error. • Commented codes are ignoredin general. Assessments [CS1020 Lecture 0: Course Admin]
Practical Exam • Date: 2nd April • Time: 10am to 3pm • Venue: PL labs in COM1 basement • Open-book, similar to sit-in labs • Marking scheme is the same as sit-in labs Assessments [CS1020 Lecture 0: Course Admin]
Lab Schedules (Tentative) Plan is tentative. Refer to module website for the most up-to-date plan. Assessments [CS1020 Lecture 0: Course Admin]
Assumptions Or what we assume you should have learned in CS1010/CS1010J/CS1010S/CS1101S Program development Topics in C / Java / Python / Javascript • Writing pseudocodes • Edit – compile – execute” cycle • Step-wise refinement • Hand-tracing codes • Incremental coding • Testing • Debugging Problem solving Programming environment/tools • Class exercises • Practice exercises • Lab assignments • Operating system: UNIX • Editor: vim • Debugger: (eg: gdb)
Summary and advice (1/2) • The labs focus more on your programming skills: • Ability to translate idea into actual program • Midterm and final exam focus more on your problem-solving skills: • Ability to understand and reason about the problem • Ability to apply your knowledge to formulate solution • You need to spend time on: • Actually coding to improve your skill • Thinking deep and exploring as memorization does not help • Asking questions! (Use the IVLE forums.) [CS1020 Lecture 0: Course Admin]
Summary and advice (2/2) must be prepared and willing to put in a lot of efforts! • We provide you • Practice exercises on CodeCrunch • Self-assessments (quizzes) on IVLE • Help sessions (on request) • But, ultimately… [CS1020 Lecture 0: Course Admin]
Introductory Workshop • Those of you who have taken CS1010/CS1010J are familiar with UNIX system and vim. • For those who did not take the above and hence are unfamiliar with UNIX and vim, please attend an Intro Workshop on 14thJanuary, Thursday, at PL2 (COM1 basement) • Session 1: 10am – 11:40am • Session 2: 12nn – 1:40pm • Session 3: 2pm – 3:40pm • Please refer to IVLE forum “Intro Workshop” and sign up there [CS1020 Lecture 0: Course Admin]