COSC 2436.41350 Programming Fundamentals III |
Instructor: David Kirk Fall 2021 October 18 - December 8 EFC Home |

Java Online Book | |

Chapter 1 -
Programming Terminology Chapter 2 - Hello World Chapter 3 - Variables, Strings, Arrays Chapter 4 - Input (console, dialog, file) Chapter 5 - Control (if, while, for) Chapter 6 - Importing Packages Chapter 7 - Writing Methods Chapter 8 - Classes Chapter 9 - Inheritance |
Chapter 11
- Recursion Chapter 12 - ArrayList Chapter 13 - Sorting Chapter 14 - Stacks & Queues Chapter 15 - Linked Lists & Trees Chapter 16 - Big O Chapter 17 - Hashing Chapter 18 - Graphs Chapter 19 - Bells & Whisltes |

Resources | |

How to run Java programs on
Windows with TextPad How to run C++ and Java programs on Mac with TextMate Online Java Compiler - may not work with the large data sets used in this class primes1.txt 100,000 unsorted prime numbers primes2.txt like primes1.txt but only 100 unsorted primes4.txt 1,000,000 unsorted prime numbers flora.csv names and family of flora in a CSV file names.txt 1000 first names Syntax Highlighter | w3schools.com Java Tutorial |

Class Calendar - last updated October 26, 2021 | |

Week 1 Tuesday Oct 19 Virtual Class 9:30am |
Discuss syllabus and class format Discuss Java compiler options
About Java
Language |

Week 1 Thursday Oct 21 Virtual Class 9:30am |
Review object oriented programming (OOP) in Java Review Homework 1 Homework 1 Due October 23 |

Week 2 Tuesday Oct 26 Virtual Class 9:30am |
Discuss Recursion, Discuss Recursion |

Week 2 Thursday Oct 28 Virtual Class 9:30am |
Review Homework 2 Homework 2 Due October 30 |

Week 3 Tuesday Nov 2 Virtual Class 9:30am |
Discuss various sorting algorithms and their growth
rate Discuss Big-O Notation Discuss reading data from a text file into an ArrayList Bubble Sort Selection Sort Merge Sort Radix Sort 24 Sorts Visualized Big-O Notation in 100 Seconds |

Week 3 Thursday Nov 4 Virtual Class 9:30am |
Review Homework 3 Homework 3 Due November 6 |

Week 4 Tuesday Nov 9 Virtual Class 9:30am |
Discuss Stacks & Queues |

Week 4 Thursday Nov 11 Virtual Class 9:30am |
Review Homework 4 - using stack to check if parenthesis are
balanced Homework 4 Due November 13 Exam 1 Due November 14 - ArrayList class, Recursion, Sorting theory, Big-O notation |

Week 5 Tuesday Nov 16 Virtual Class 9:30am |
Discuss Linked Lists |

Week 5 Thursday Nov 18 Virtual Class 9:30am |
Discuss Binary Trees Homework 5 Due November 20 |

Week 6 Tuesday Nov 23 Virtual Class 9:30am |
Discuss Hashing Review Homework 6 November 24, 2021 is the last day to Withdraw |

Week 6 Thursday Nov 25 |
Thanksgiving Holiday - no class Homework 6 Due November 27 |

Week 7 Tuesday Nov 30 Virtual Class 9:30am |
Discuss graphs and shortest path algorithm Dijkstra's Algorithm Video 1 | Dijkstra's Algorithm Video 2 Discuss Homework 7 |

Week 7 Thursday Dec 2 Virtual Class 9:30am |
Discuss Homework 7 Exam 2 Due December 5 - Big 0 Notation, stack, queue, linked list, binary tree, hash tables, graphs |

Week 8 Tuesday Dec 7 Virtual Class 9:30am |
Work on Homework 7 Homework 7 Due December 7 - Optional demonstrations to class |