Dalhousie University    [  http://web.cs.dal.ca/~vlado/csci1110/coursecalendar.html  ]
Fall 2016 (Sep6-Dec6)
Faculty of Computer Science
Dalhousie University

CSCI 1110 — Course Calendar

[ Home | Calendar | Assignments ]
1 We Sep 7Course Introduction
Course logistics and administriva, important dates, course description, evaluation scheme and criteria; lectures, exams, assignments, and lab work; textbooks; academic integrity policy, culture of respect, the parachute clause; tentative list of topics.
2 Fr Sep 9Computer systems, Programming
Components of a computer system, computer program, run or execute a program, programming constructs, elements of a programming language.
3 Mo Sep 12Variables, Assignment
Program example; JVM, compilation, and execution; operations, assignment, expressions, scope.
L1 Tu Sep 13Lab 1  
4 We Sep 14Primitive Data Types, Program Output
Data types, primitive data types, program output.
5 Fr Sep 16Control Structures
Escape sequences and more details about output, reading standard input, basic control flow statements. Reading: p111-188 Ch3 Decision Structures
6 Mo Sep 19Loops and Arrays
Loops and Arrays in Java. Reading: p189-229 Loops; p405-474 Arrays;
L2 Tu Sep 20Lab 2
Work on Assignment 1 and Assignment 2
7 We Sep 21 Methods (Subroutines)
Arrays: instantiation, assignment, enhanced for loop, multi-dimensional arrays; Subroutines (methods, procedures, functions), declaring and using methods. Reading: p269-317 Procedures (Methods)
8 Fr Sep 23 Algorithms
Hierarchical method calls and recursive method calls, Algorithms, pseudo-code and algorithm components, Algorithm examples, notion of algorithm complexity analysis Reading: p1106-1111 Algorithms
9 Mo Sep 26 Algorithms: Iterations and Nested Iterations
20 questions game algorithm, complexity; nested iteration algorithm examples.
L3 Tu Sep 27Lab 3
Work on Assignment 2, and fix class names for Assignment 1
10 We Sep 28 Coding Style, Sorting
Coding Style; matrix multiplication algorithm; sorting, bubble sort Reading: p1069-1089 Sorting
11 Fr Sep 30Sorting, Recursion
Sorting: bubble, selection, insertion; More algorithms; recursion, factorial function. Reading: p1041-1068 Recursion
12 Mo Oct  3Recursion  
L4 Tu Oct  4Lab 4  
13 Fr Oct  7 Classes and Objects
Changing scanner behaviour, recursion and prefix notation; Object-oriented programming, classes and objects, class components Reading: p319-403 ch6 A First Look at Classes
  Mo Oct 10No class. Thanksgiving. University closed.  
L5 Tu Oct 11Lab 5: SVN Tutorial  
14 We Oct 12Fields, Constructors, and Methods
OOP in Java, example, UML representation, variables and objects, fields, fields and local variables.
15 Fr Oct 14Inheritance and Method Overriding
Method signatures and overloading, getters and setters; Inheritance, type hierarchies, method overriding, inheritance in Java. Reading: p613-683 Inheritance
16 Mo Oct 17Polymorphism; Lists and Array Lists
Inheritance and Constructors, access specifiers, inheritance and UML; polymorphism; lists and ArrayList Reading: 474-488 (ArrayList)
L6 Tu Oct 18Lab 5: SVN Tutorial  
17 We Oct 19 ArrayList and Lists
Some illustrative inheritance examples; List oprations, ArrayList: usage and some operations; Lists: unordered, ordered, and sorted Reading: 474-488 ArrayList
18 Fr Oct 21Array-based List Implementation
Implementing Lists with Arrays: internal fields and methods, implementation of the main operations, cost of the main operations
19 Mo Oct 24 Circular Arrays
Circular arrays as a variation to ListArray.
L7 Tu Oct 25Lab 7: Work on Assignment  
20 We Oct 26Circular Arrays, Linked Lists
Circular array implementation details; Linked lists: description, comparison with array-based implementation (pros and cons), implementatino discussion Reading: p1237-1288 Linked List
21 Fr Oct 28Review Questions for Term Test II
Review questions for Term Test II
22 Mo Oct 31Review for test (cont); Linked Lists (cont)
Review for Term Test II (cont.); Linked lists (cont)
L8 Tu Nov  1Lab 8: Test prep., Work on Assignment  
23 Fr Nov  4 Linked Lists (cont.)
Linked lists (cont.)
   Nov 7-11Fall Study Break, no classes  
24 Mo Nov 14 Abstract Data Types  
L9 Tu Nov 15Lab 9: Work on Assignment 6  
25 We Nov 16Interfaces, Stacks Reading: p662-683 Interfaces  
26 Fr Nov 18Stacks, UML Diagrams, Queues
Some stack-based algorithms: evaluating post-fix notation, translating post-fix to in-fix or pre-fix notation, evaluating a fully parenthesized infix expression, depth-first search in graphs; review of UML diagrams, aggregation in UML diagrams; Queues. Reading: p1289-1310 Stacks and Queues
27 Mo Nov 21Queues, Breath-First Search  
L10 Tu Nov 22Lab 10
Lab location change for: B02 (Tue 2:30-5:30pm) from CS330 to McCain 2018.
28 We Nov 23File IO, Exceptions
Java file input and output for textual files, writing and closing a file, exception issue, appending to a file, reading from a file, checking for file existence; Exceptions, exception objects. Reading: p230-248 File IO, p703-734 Exceptions
29 Fr Nov 25Exceptions, Review of some Java details
Exceptions hierarchy, exception examples, handling exceptions, try-catch statement, throwing exceptions; review of some Java details.
30 Mo Nov 28Review of some Java details, MergeSort
About practicum; review of some Java details: toString, copy, clone, copy constructor; some useful string methods: Character class, exact matching, efficient string operations; sorting revisited: merge sort.
L11 Tu Nov 29Lab 11 - Practicum
Lab location change for: B02 (Tue 2:30-5:30pm) from CS330 to McCain 2018.
31 We Nov 30Mergesort
Mergesort algorithm: general algorithm, implementation with arrays, implementation with linked lists.
L11 We Nov 30Lab 11 - practicum B01
Practicum for B01 group, CS134 (Lab 4)
32 Fr Dec  2Quicksort
Complexity of Mergesort; Quicksort.
33 Mo Dec  5Quicksort, Collections in Java
Quicksort, algorithm and example, comparison of quicksort and mergesort; Java collections: list, set, and map.
34 Tu Dec  6Course Review for Exam
The lecture time and location is the same as the previous Monday.
  Tu Dec  6 Term ends  
  Fr Dec  9Final Exam (15:30 - 18:30) Dalplex
Final exam, duration 3 hours, starting at 3:30pm in Dalplex. Exams schedule URL: http://www.dal.ca/academics/exam_schedule/halifax_campus_exam_schedule.html

Currently maintained by: Vlado Keselj, last update: 22-Aug-2018