** This content is subject to change.
- Location: Online
- Time: Virtual meetings on Tuesdays 5pm - 6:30pm
- Dates: Apr 5, 2021-Jun 18, 2021
- Instructor: Ava Meredith
- Website: https://www.avameredith.com/
- Email: [email protected]
- Office Hours: Virtual, Tuesdays 1-3pm
- Credits: 5
Covers advanced Java language features and programming concepts: collections, generics, recursion, sorting, searching, algorithm analysis, and dynamic structures such as lists, stacks, and queues. Students will also learn the tools for building efficient software systems: dynamic data allocation, recursion and analysis of algorithms.
Upon successfully completing this course students will have conceptual and practical knowledge of the following areas:
- Continuation and expansion of existing Java programming skills including the use of inheritance, interfaces, and abstract classes in program design
- Object-Oriented Design Concepts including but not limited to encapsulation, inheritance, polymorphism, abstract classes and interfaces
- Collections, generics, linked lists, stacks, and queues
- Building efficient programs through the use of sorting, searching and algorithm analysis
- Recursion
ZyBooks Digital textbook
- Sign in or create an account at learn.zybooks.com
- Enter zyBook code: SEATTLECENTRALIT212MeredithSpring2021
- Subscribe
Note: Students can get access to Chapter 1 for free if needed.
Eclipse IDE https://www.eclipse.org/downloads/
Will be based on Weekly Coding Assignments 100 points Weekly Participation Activities 20 points Midterm Project 100 points Final Project 100 points
Weekly homework assignments will be assigned to you on Canvas. Each assignment will be worth 100 points. Partial credit will be given for incomplete assignments turned in on time, based on the level of completion. To receive full credit, your assignment must display the specified functionality and if specified, using specific techniques learned during class. Late homework assignments may be accepted, with instructor permission, at 80% of total possible grade (80 points). Participation activities will be worth 20 points.
If you do not complete the assignment by the due date, you will receive a grade of 0. Partial points will be given for partially completed assignments.
You may request a regrade by emailing me and clearly stating for which assignment you are requesting a regrade (e.g. Email subject: Regrade Ch 1 Code Lab: 1.14).
A regrade request does not guarantee a regrade.
Students can use email to communicate with me regarding private matters such as grades. However, questions that are content-related can benefit all students; therefore, please ask those either in the face-to-face environment or in our virtual course discussion forums. I will be checking forums daily and receive email notifications when students post. This helps speed up the response process along with the fact that your peers can also help answer your questions.
I have created a Q&A Forum in the Discussions section. If you have a question about the course or the content, please post it in this forum. If you see a question from a peer that you know the answer to, please feel free to answer it. This reduces the lag time between asking a question and getting an answer. Course questions should be posted here rather than being sent to my email so that all students benefit from the answer. Questions of a personal nature, such as feedback on an assignment, should be sent via the Inbox to protect your privacy.
You will receive no credit and may be subject to disciplinary action if your graded work is determined not to be your own. For more information, refer to your Academic Dishonesty Policy in the college catalog or student handbook.
Link can be found here
Introduction to Data Structures and Algorithms Generics
Collections
Recursion Searching and Algorithm Analysis
Sorting Algorithms
Lists
Stacks, Queues Midterm
Hash tables
Trees
Heaps and Treaps Sets
Graphs Graph Algroithms: Dijkstra's shortest path, Bellman-Ford's shortest pat Algorithms: Huffman compression, Heuristics, Greedy algorithms, Dynamic programming
TBD Final Exam