comp3600/6466 –algorithms•problem formulation, algorithms design and their implementation,...

18
COMP3600/6466 – Algorithms Class Admin Hanna Kurniawati https://cs.anu.edu.au/courses/comp3600/

Upload: others

Post on 06-Aug-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: COMP3600/6466 –Algorithms•Problem formulation, algorithms design and their implementation, theoretical analysis of the algorithms, and empirical analysis of the implementation

COMP3600/6466 – Algorithms Class Admin

Hanna Kurniawati

https://cs.anu.edu.au/courses/comp3600/

Page 2: COMP3600/6466 –Algorithms•Problem formulation, algorithms design and their implementation, theoretical analysis of the algorithms, and empirical analysis of the implementation

Why Study Algorithms?• It’s compulsory for many

programs!•Why is it compulsory?

Picture courtesy of https://en.wikipedia.org/wiki/Dr._Heinz_Doofenshmirtz

Best way to bring GPA down….

Page 3: COMP3600/6466 –Algorithms•Problem formulation, algorithms design and their implementation, theoretical analysis of the algorithms, and empirical analysis of the implementation

Why Study Algorithms?

Page 4: COMP3600/6466 –Algorithms•Problem formulation, algorithms design and their implementation, theoretical analysis of the algorithms, and empirical analysis of the implementation

Why Study Algorithms?• It’s compulsory for many

programs!•Why is it compulsory?• It is the foundation of

computer science• The ubiquity of computers in

our everyday life is due to understanding & advances in Algorithms

Picture courtesy of https://en.wikipedia.org/wiki/Dr._Heinz_Doofenshmirtz

Best way to bring GPA down….

Page 5: COMP3600/6466 –Algorithms•Problem formulation, algorithms design and their implementation, theoretical analysis of the algorithms, and empirical analysis of the implementation

What is this class about?

The basics of Algorithms Design & Analysis

• Know and understand various algorithm design techniques

• Develop the basic skills to design correct & efficient (in time & space requirements) algorithms

• Is an algorithm correct?• How to predict the time & space an algorithm

required given various input size?

Page 6: COMP3600/6466 –Algorithms•Problem formulation, algorithms design and their implementation, theoretical analysis of the algorithms, and empirical analysis of the implementation

Pre-requisites• Comfortable programming using high level

language• Comfortable using basic abstract data structure,

e.g., stack, queue, binary tree• Know and have implemented some form of sorting

and/or search algorithms, e.g., BFS, DFS• Have implemented a recursive function• Basic calculus (limit & derivation)

Page 7: COMP3600/6466 –Algorithms•Problem formulation, algorithms design and their implementation, theoretical analysis of the algorithms, and empirical analysis of the implementation

Face-to-face Activities• Lecture:• Monday, 5.05pm-6.55pm (10 min break), Coombs

Lecture Theatre• Q&A session (starting week 2):• To discuss lecture and/or tutorial questions• No question – no answer J• Wednesday, 4.05pm-4.55pm, Coombs Lecture Theatre• Exception:• Monday 7 Oct is a public holiday à no lecture.• But, we’ll have 2 lectures during Q&A sessions, on 25

Sep & 2 Oct.

Page 8: COMP3600/6466 –Algorithms•Problem formulation, algorithms design and their implementation, theoretical analysis of the algorithms, and empirical analysis of the implementation

Face-to-face Activities• Tutorial (starting week 2)• There’ll be 13 tutorial groups• Registration will open this Wednesday (24 Jul) until

next Friday (2 Aug). • Please don’t forget to register!• Tutorial questions will be released by

Thursday and discussed in tutorials / Q&A session the following week• Please try them yourselves first before coming to

the tutorials!

Page 9: COMP3600/6466 –Algorithms•Problem formulation, algorithms design and their implementation, theoretical analysis of the algorithms, and empirical analysis of the implementation

Attendance?• No, we will not take attendance in lectures,

Q&A sessions, and tutorials• But, this is a campus-based class,

meaning:• We do NOT guarantee all explanation covered

in the lecture and Q&A sessions will be in the video recording• There will be no recording of the tutorial and

help outside of the tutorial slots are totally at the discretion of the tutors

Page 10: COMP3600/6466 –Algorithms•Problem formulation, algorithms design and their implementation, theoretical analysis of the algorithms, and empirical analysis of the implementation

Teaching StaffsLecturer & convenor: Hanna Kurniawati

Tutors:

Jeffery Guo Erli Wang

Samuel Yang-Zhao

Jonathon Schwartz Kartik Gupta

Matthew Aitchison Xinghao LiMengyu Chen

Page 11: COMP3600/6466 –Algorithms•Problem formulation, algorithms design and their implementation, theoretical analysis of the algorithms, and empirical analysis of the implementation

Communication• Discussion forum:

http://piazza.com/anu.edu.au/summer2019/comp36006466• Please register ASAP (preferably, before end of the week)• E-mail teaching staffs: [email protected]• For e-mails related to this class, please do NOT send to my

personal e-mails nor the tutors personal e-mails. If you send to our personal e-mails, we’ll likely miss your e-mails or not respond in time.

• Approach me before/after lecture or during the break. Or, approach the tutors before/after the tutorial.

Page 12: COMP3600/6466 –Algorithms•Problem formulation, algorithms design and their implementation, theoretical analysis of the algorithms, and empirical analysis of the implementation

Assessments• 3 assignments @20% redeemable + final

exam@40%• Each assignment will include:• Problem formulation, algorithms design and their

implementation, theoretical analysis of the algorithms, and empirical analysis of the implementation of the algorithms.

• Algorithms can be implemented in C/C++/Java. However, support will only be given to C++.

• On-line submission• Final exam: Paper-based, covers all materials

Page 13: COMP3600/6466 –Algorithms•Problem formulation, algorithms design and their implementation, theoretical analysis of the algorithms, and empirical analysis of the implementation

Assessments Timeline• A1: 5 August - 23 August, 23:59• A2: 26 August - 27 September, 23:59• A3: 30 September - 18 October, 23:59• Final exam: Follows ANU exam schedule

• For each assignment, we provide a 13 hours grace period• During this time, you can submit without penalty• Once the grace period is over, you will no longer be able to

submit your assignment• Exception will only be made under proven extenuating

circumstances approved by one of the teaching staffs

Page 14: COMP3600/6466 –Algorithms•Problem formulation, algorithms design and their implementation, theoretical analysis of the algorithms, and empirical analysis of the implementation

References• Thomas H. Cormen, Charles E. Leiserson,

Ronald L. Rivest, and Clifford Stein. Introduction to algorithms, 3rd Ed. MIT press, 2009• Anany Levitin. Introduction To Design And

Analysis Of Algorithms, 3rd Ed. Pearson Higher Education, 2011• Additional materials along the way

Page 15: COMP3600/6466 –Algorithms•Problem formulation, algorithms design and their implementation, theoretical analysis of the algorithms, and empirical analysis of the implementation

Cheating• NOT tolerated!• Bad for everyone: Your fellow students and yourself!!!• If we see this class’ assignment being out-sourced in some

sites, we will bid to do that assignment and if we win, we’ll put easter egg in it!

• If a teaching staff suspects cheating has happened, (s)he has the right to quiz the students involved.

• We will follow ANU procedure.• For Poor Academic Practice / Academic Misconduct, the

penalty will be:• Caught the 1st time: At least 0 mark for the assessment• Caught the 2nd time: At least 0 mark for the course

Page 16: COMP3600/6466 –Algorithms•Problem formulation, algorithms design and their implementation, theoretical analysis of the algorithms, and empirical analysis of the implementation

Cheating• If you have issues, discuss with me or your

tutor• Meet us before/after lecture/tutorial OR during

lecture break OR• E-mail: [email protected]• Do NOT resort to cheating!!!

Page 17: COMP3600/6466 –Algorithms•Problem formulation, algorithms design and their implementation, theoretical analysis of the algorithms, and empirical analysis of the implementation

What constitute cheating?• In short, cheating is when you claim someone

else’s full/partial work as yours• You can discuss but, you need to:• Work on the submitted assignment on your own• Disclose who you discuss the assignment with• You can search the internet but, you need to

disclose all the references (websites, papers, books, etc.)• The number of references will not affect your mark!

Page 18: COMP3600/6466 –Algorithms•Problem formulation, algorithms design and their implementation, theoretical analysis of the algorithms, and empirical analysis of the implementation

ToDo• Register to the class’ discussion forum• Register to a tutorial group any time

between 24 Jul & 2 Aug