[an error occurred while processing this directive]
[an error occurred while processing this directive]This unit introduces students to problem solving concepts and techniques fundamental to the science of programming. In doing this it covers problem specification, algorithmic design, analysis and implementation. Detailed topics include analysis of best, average and worst-case time and space complexity; introduction to numerical algorithms; recursion; advanced data structures such as heaps and B-trees; hashing; sorting algorithms; searching algorithms; graph algorithms; and numerical computing.
2 hrs lectures/wk, 3 hr laboratory/fortnight, 1 hr tutorial/fortnight
Students will be expected to spend a total of 12 hours per week during semester on this unit as follows:
One of FIT1008, FIT1015 or CSE1303 and 6 points of Level 1 mathematics.
Reza Haffari
Phillip Abramson
Tianyu Long
At the completion of this unit students will have:
Examination (3 hours): 70%; In-semester assessment: 30%
Assessment Task | Value | Due Date |
---|---|---|
ADTs, Proofs & Induction | 6 % | Week 4 |
Complexity Analysis | 6 % | Week 6 |
Dynamic Programming | 6 % | Week 8 |
Trees | 6 % | Week 10 |
Graphs & Graph Algorithms | 6 % | Week 12 |
Examination 1 | 70% | To be advised |
Monash is committed to excellence in education and regularly seeks feedback from students, employers and staff. One of the key formal ways students have to provide feedback is through SETU, Student Evaluation of Teacher and Unit. The University's student evaluation policy requires that every unit is evaluated each year. Students are strongly encouraged to complete the surveys. The feedback is anonymous and provides the Faculty with evidence of aspects that students are satisfied and areas for improvement.
For more information on Monash's educational strategy, and on student evaluations, see:
http://www.monash.edu.au/about/monash-directions/directions.html
http://www.policy.monash.edu/policy-bank/academic/education/quality/student-evaluation-policy.html
If you wish to view how previous students rated this unit, please go to
https://emuapps.monash.edu.au/unitevaluations/index.jsp
Week | Activities | Assessment |
---|---|---|
0 | No formal assessment or activities are undertaken in week 0 | |
1 | Specification & Abstract Data Types | |
2 | Proofs & Induction | |
3 | Complexity Analysis I | |
4 | Complexity Analysis II | Assignment 1: ADTs, Proofs and Induction |
5 | Pattern Matching | |
6 | Dynamic Programming | Assignment 2: Complexity Analysis |
7 | Dynamic & Balanced Trees | |
8 | Amortized Analysis | Assignment 3: Dynamic Programming |
9 | Multi-way Trees | |
10 | Graphs | Assignment 4: 2-4 Trees, AVL Trees, Skip Lists. |
11 | Path Problems | |
12 | Flow Problems | Assignment 5: Graphs and Graph Algorithms |
SWOT VAC | No formal assessment is undertaken SWOT VAC | |
Examination period | LINK to Assessment Policy: http://policy.monash.edu.au/policy-bank/ academic/education/assessment/ assessment-in-coursework-policy.html |
*Unit Schedule details will be maintained and communicated to you via your MUSO (Blackboard or Moodle) learning system.
To pass a unit which includes an examination as part of the assessment a student must obtain:
If a student does not achieve 40% or more in the unit examination or the unit non-examination total assessment, and the total mark for the unit is greater than 50% then a mark of no greater than 49-N will be recorded for the unit
It is a University requirement (http://www.policy.monash.edu/policy-bank/academic/education/conduct/plagiarism-procedures.html) for students to submit an assignment coversheet for each assessment item. Faculty Assignment coversheets can be found at http://www.infotech.monash.edu.au/resources/student/forms/. Please check with your Lecturer on the submission method for your assignment coversheet (e.g. attach a file to the online assignment submission, hand-in a hard copy, or use an online quiz).
Submission must be made by the due date otherwise penalties will be enforced.
You must negotiate any extensions formally with your campus unit leader via the in-semester special consideration process: http://www.infotech.monash.edu.au/resources/student/equity/special-consideration.html.
Monash has educational policies, procedures and guidelines, which are designed to ensure that staff and students are aware of the University's academic standards, and to provide advice on how they might uphold them.
You can find Monash's Education Policies at:
http://policy.monash.edu.au/policy-bank/academic/education/index.html
Key educational policies include:
The University provides many different kinds of support services for you. Contact your tutor if you need advice and see the range of services available at www.monash.edu.au/students The Monash University Library provides a range of services and resources that enable you to save time and be more effective in your learning and research. Go to http://www.lib.monash.edu.au or the library tab in my.monash portal for more information. Students who have a disability or medical condition are welcome to contact the Disability Liaison Unit to discuss academic support services. Disability Liaison Officers (DLOs) visit all Victorian campuses on a regular basis
READING LIST
Mark Allen Weiss:
Data Structures and Algorithm Analysis in Java. 2nd ed
Addison-Wesley.
Michael Goodrich and Roberto Tamassia.
Data Structures and Algorithms in Java, 3rd ed
John Wiley.
Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein. Introduction to Algorithms, 2nd Edition, EHT MIT Press & McGraw Hill
Duane Bailey. Java Structures: Data Structures in Java for the Principled Programmer. International Edition, May 1999, Mc Graw Hill. This book is available for free online at http://www.cs.williams.edu/~bailey/JavaStructures/Welcome.html