CSIE1212: Data Structures and Algorithms
Hsuan-Tien Lin
Dept. of CSIE, NTU
Course Introduction, March 02, 2015
Three Warnings Before (Signing for) the Course (1/3)
goal of NTU DSA class:
as good as the best ones in the world
tentatively, 6 homework sets, midterm exam, final project
(http://www.csie.ntu.edu.tw/~htlin/course/dsa15spring) will haveHW1 next week
writing assignments andtime-consumingprogramming assignments
be prepared towork hard!
警告: High Expectations
Three Warnings Before (Signing for) the Course (2/3)
Will you give me a second chance if I copy homework from other people? No.
Could you let me pass because I will be kicked out by the 1/2 rule?No.
Will you change my score from F to C? No.
be prepared tofollow the rules!
警告: Strict Instructor
Three Warnings Before (Signing for) the Course (3/3)
fifth-time teaching this course, first-time teachingin English ambitious and willing toexperiment
How many people will not pass?
I don’t know yet.
Will your investment (time) get good return (knowledge)?
No guarantees, but I’ll try my best.
be prepared totake some risks!
警告: Uncertain Outcome
Wise Words
給資訊系的同學們:努力加油
給想加選的同學們:審慎考慮
Some Historical Notes
Once upon a time, when I was a freshman in NTU CSIE (1997)...
「計程」有兩學期,上學期教C,下學期教C++
大二上學期教「資料結構」
大二下學期教「演算法」
Then, in my senior year (2001)...
「計程」變成一學期,大一下學期教「物件導向程式設計」(Java) 大二上學期教「資料結構與演算法上」
大二下學期教「資料結構與演算法下」
Then, starting 2010...
物件導向程式設計變為選修
大一下學期教「資料結構與演算法」
大二上學期教「演算法設計與分析」
Reasons
兩學期的「計程」變成一學期、「物件導向程式設計」變成選修 : 相信同學們可以有自己學習不同語言的能力。
把「資料結構」及「演算法」合成一門課 : 兩者互相依賴,其實不容易分散來教。
把「資料結構與演算法上/下」區分成「資料結構與演算法」和
「演算法設計與分析」 :
強調前者以實作為主,銜接計程做更深入的程式練習;後者以分
析為主,建立在前者的基礎上探討更多不同的演算法。
Basic Information
instructor:
林軒田Hsuan-Tien Lin (htlin@csie.ntu.edu.tw) office hour: after class or by appointment
course webpage, mailing list:
http://ceiba.ntu.edu.tw/1032dsa(CEIBA) course contents actually in
www.csie.ntu.edu.tw/~htlin/course/dsa15spring willsynchronize/sharewith Professor Roger Jang’s class in syllabus, homework, exam, project and TAs
Update your secondary email address on CEIBA!
Instructor: Strict but Friendly
Will you repeat the previous code/slide again? Yes.
Will you discuss with me after class if I don’t understand? Yes.
Will you pardon my silly questions? There arenosilly questions.
Feel free to ask me questions and give me feedback!
Enrollment
1xx seats in room 102, thus the limit type-3: just go test your luck
auditing: welcomed (to sit) only if there is an empty chair please think before you choose to enroll
Teaching Assistants
TAs (tentatively): 黃冠豪、宋彥頡、林天翼、陳步青、鍾毓安、鍾
詠先、林于智、沈亮欣、劉承昌、周紀寧
TA email: dsa@csie.ntu.edu.tw
—many TAs and 2 instructors around, usually faster than sending to individual
office hours: to be announced
very friendly TAs; ask them more questions!
THE Principle
Taking any unfair advantages over other class members is not allowed. It is everyone’s respon- sibility to maximize the level of fairness.
eating? fine, but no smells and no noise sleeping? fine, but no snoring
cellphone? fine, but silent mode, and speak outside ...
applies to instructor, TAs, students
Honesty
NO CHEATING
NO LYING
NO PLAGIARISM
Grade
90%: homework (best * 1.5 + worst * 0.5 + others), midterm exam, final project
10%: in-class or on-forum questions (need: ≥ 5 per person) raw score goes through some order-preserving quantization steps (two classes will use the same thresholds to be decided later)
raw score 80 with term rank A: possible raw score 80 with term rank B: possible raw score 60 with term rank F: possible
raw scores 80, 60 with term scores B, B: possible, but unlikely raw scores 80, 60 with term scores F, B:impossible
from the principle: no individual score change
Collaboration and Open-Book
homework discussions: encouraged but fairness?
write the final solutions alone and understand them fully references (books, notes, Internet):
consulted, butnot copied from no need to lend/borrow solutions
to maximize fairness (everyone’s responsibility), lending/borrowing/buying/selling not allowed
Collaboration and Open-Book
to maximize fairness (everyone’s responsibility), lending/borrowing/buying/selling not allowed to maximize fairness (everyone’s responsibility), lending/borrowing/buying/selling not allowed to maximize fairness (everyone’s responsibility), lending/borrowing/buying/selling not allowed
Deal? If your classmate wants to borrow homework from you, what do you say?
Homework
students: justify solutions clearly TAs: evaluate solutions fairly
no individual extension unless not violating the principle (e.g.
institute-established cases of illness or emergency) late penalty:
90% of the value for 12-hour late, 80% of value for 24-hour late, ...
four penalty-free late half-days (金金金牌牌牌) per person
Textbook
Data Structures and Algorithms in C++, 2nd Edition by Goodrich, Tamassia and Mount.
please get it as early as possible will try to teach a lot from it
learning to read a textbook is part of the course
Getting the Book to Read
NTU Library: reserved copy in the shared course material area R536: will put some shared copies to be read in the room If the book is not affordable to you: email me
(htlin@csie.ntu.edu.tw) and I’ll see how I can help.
Reading Assignments
weekly
sections related to what we teach, or sections that are worth reading by yourself
—we cannot teach all, but with reading you can learn all 3-6: 3 hour teaching, 6 hour reading/writing after class as important as writing assignments:
some may show up in exams
How to Pass the Class?
catch up from day 1 ask questions!
have fun writing programs understand writing proof
Important TODOs
Update your secondary email address on CEIBA Read the policy thoroughly
Enjoy the Class! Questions?