Computer Science


Principles of Computer Science: COMPSCI 105 Semester 1, 2017


 

Course Description

This course extends the programming skilled obtained from the first programming course (COMPSCI 101) emphasizing good software design through an appreciation of data structures and code efficiency. The course provides an introduction to multidimensional arrays, exception handling, recursion and file input and output. The importance of abstraction and abstract data types is illustrated through the study of traditional data structures (such as lists, stacks, queues, trees, priority queues, heaps and hash tables). The performance characteristics of different implementations of these data structures are studied, aided by an introduction to the performance of searching and sorting algorithms.

Top
Course information document

Please carefully read the course information document, which contains essential information about the course including the course schedule.

Top
Final Learning Outcomes

A student who successfully completes this course will be able to:

  • Define a class to model and represent an object
  • Write code which handles important exception types
  • Use a standard data interchange format for reading and writing complex data types
  • Write programs that store and manipulate data in standard linear data structures (arrays, linked lists, stacks, queues) and non-linear data structures (hash tables, trees)
  • Compare the efficiency of algorithms using standard big-O notation
  • Implement recursive solutions to simple problems
  • Implement recursive data structures such as linked lists and trees
  • Explain the basic algorithm for any of the studied sorting methods
  • use regular expressions to extract data from a body of text
Top
Lecture Times and Locations

Please check Student Services Online for the latest lecture times and the lecture venue (sometimes this changes!)

  • Wednesday 1:00PM - 2:00PM, 303-G20 (PLT1)
  • Thursday 1:00PM - 2:00PM, Eng1401
  • Friday 1:00PM - 2:00PM, 109-B15

Top Top
Assessment
  • Labs (10%)
  • Assignments (15%)
  • Test (15%)
  • Exam (60%)
Top
Passing the course

  • COMPSCI 105 is a practical course, which means you must pass the practical (assignments and labs) and the theory (test and exam) sections separately.

  • The pass mark is likely to be 50% but might be lower. If you have not achieved 50% in the practical part you are still advised to sit the exam.

Top
Canvas

  • All marks, lecture recordings and announcements can be found on the Canvas system.
  • Please check your marks each week and contact Angela Chang if there are any problems.
Top
Forum

The 105 class forum is available for course related posts.

Top
Python

We will be programming in Python 3. Programs submitted in solution to assignments should have been tested using Python 3.

Top
Handling illness or absence

  • If you must leave for family emergencies etc., PLEASE talk to the lecturer, or somehow get a message to the department. Very few problems are so urgent that we cannot be told quite quickly.
  • For problems affecting assignments or tests, see the lecturer, as soon as reasonably possible.
  • For illness during exams (or other problems that affect exam performance) students MUST contact the University within ONE WEEK of the last affected examination, to apply for an aegrotat pass (for illness) or compassionate pass (other problems). THE ONE WEEK LIMIT IS STRICTLY ENFORCED.

Top
Assistance

  • If you need extra help with understanding the course material, or preparing for the test or exam, you are very welcome to visit Angela or Mike. The tutors will also be available to help you during the lab sessions in the basement level undergraduate labs, and the lab demonstrators are all able to help with the Compsci 105 material.
  • Please remember that there are other sources of assistance that could be of use. Do not forget the student learning centre if you are having trouble keeping up with your courses – see http://www.slc.auckland.ac.nz . ESOL students can obtain targeted language assistance from the delna programme, check http://www.delna.auckland.ac.nz.

Top Top


Apply now!


Handbook

Postgraduate study options

Computer Science Blog



Please give us your feedback or ask us a question

This message is...


My feedback or question is...


My email address is...

(Only if you need a reply)

A to Z Directory | Site map | Accessibility | Copyright | Privacy | Disclaimer | Feedback on this page