Basics
Instructor: Dr. Mark Lewis
Office: CSI 270H
Phone: 999-7022
E-mail: mlewis@trinity.edu
Office hours: I list these on my T-mail calendar. On the
Textbooks:
"Introduction to Algorithms, 4th Edition" by Cormen, Leiserson, Rivest, and Stein
"Effective Java, Third Edition" by Bloch
Description
This is a course on data structures using Java. We will start with basic data structures you have seen before and move through the most commonly used data structures and some more advanced ones. This course aims to give you a deep understanding of these data structures so that you can choose the right one and understand the performance implications of that choice.
For those of you considering going into software development, this is one of the most important courses you will take as part of the major. Knowing what data structures are appropriate for different tasks and how "fast" they are in terms of computational complexity is essential both for technical interviews and for writing good code on the job.
Grading
This course will use a cumulative point approach to grading. Everything you turn in can give you a certain number of points. Different numbers of points result in different final grades. The following table lists the type of things you will be turning in and how many points they are worth.
This table tells you what grade you will get for different point totals.
Academic Integrity and the Honor Code
All students are covered by a policy that prohibits dishonesty in academic work. Under the Honor Code, a faculty member will (or a student may) report an alleged violation to the Academic Honor Council. It is the task of the Council to investigate, adjudicate, and assign a punishment within certain guidelines if a violation has been verified. Students are required to pledge all written work that is submitted for a grade: “On my honor, I have neither given nor received any unauthorized assistance on this work” and their signature. The pledge may be abbreviated “pledged” with a signature. For coding assignments, this should appear as a comment at the top of each file submitted.
All assignments submitted for this course should reflect your own thinking and work. You are encouraged to get assistance from the professor or ACM tutors. Any use of generative AI, such as but not limited to Chat GPT, will be considered “unauthorized assistance” and a violation of academic integrity and of the Trinity University Honor Code.
Title IX
As a faculty member, I am designated as a Responsible Employee. As such, I am required to report any instances of sexual misconduct or sexual harassment to the Title IX Coordinator when: 1) I witness or receive information in the course and scope of my employment, 2) this information is about the occurrence of an incident that I reasonably believe is Sexual Harassment or Sexual Misconduct, and 3) the incident is committed by or against someone who was a Trinity university student, employee, or contractor a the time of the incident. This reporting responsibility applies regardless of where the incident occurred (on- or off-campus) and regardless of whether the individual(s) are still affiliated with Trinity.
If you share information with me about any incidents that implicate the Policy Prohibiting Sexual Harassment and Sexual Misconduct, I am required to report this to the Title IX Coordinator to make sure you have information about support resources and complaint resolution options. My report does not initiate the complaint process, and you are in control over how you choose to engage with our Title IX Coordinator. If you or someone you know has experienced sexual misconduct, including sexual harassment, I encourage you to share this information directly with the Title IX Coordinator or one of the individuals who has been designated as a confidential resource on campus. The reporting form is available here and information about supportive resources is available here.