Course Home | Syllabus | Assignments | Schedule | Downloads | [print]
CS 3510: Algorithms
Spring 2024 Syllabus
Course Description
Required of students pursuing a Computer Science degree or emphasis. Covers the analysis and design of algorithms and data structures, including graphs, greedy algorithms, divide and conquer algorithms, and dynamic programming.
Prerequisites
CS 2420 (Grade C- or higher); AND CS 2810 (Grade C- or higher); AND CS 3310 (Grade C- or higher)
Course fees
Course fee: $20, used to assist in maintaining department infrastructure.
Disability Statement
If you suspect or are aware that you have a disability that may affect your success in the course you are strongly encouraged to contact the Disability Resource Center (DRC) located in the North Plaza Building. The disability will be evaluated and eligible students will receive assistance in obtaining reasonable accommodations. Phone # 435-652-7516.
Sections
MWF 9:00-9:50 am in Smith 116
CRN: 20173
Final exam May 1 at 9:00 am - 10:50 am
Instructor
Instructor: Curtis Larsen
Email: curtis.larsen@utahtech.edu
Phone: 435-652-7972
Office: Holland Centennial Commons 463
Office Hours:
- Mondays 9:30 am - 11:30 am
- Tuesdays 3:00 pm - 4:00 pm
- Wednesdays 1:00 pm - 2:00 pm
- Thursdays 3:00 pm - 4:00 pm
Office hours are a fantastic opportunity to receive personalized assistance with any questions or concerns you may have about course concepts, assignments, or anything else on your mind.
I’m here to support you throughout the week with regular office hours. No need to worry about telling me in advance to use the scheduled office hours, just drop by whenever it suits you! Whether you prefer a face-to-face chat in my office at HCC 463 or joining me virtually via Zoom, the choice is yours. You can find the Zoom link conveniently posted in an announcement on Canvas.
If these times don’t fit your schedule, don’t hesitate to reach out to me. Simply shoot me an email or a message through Canvas, and we can find a time that works better for you. When you message me, suggesting a few alternative times would be incredibly helpful.
Looking forward to connecting with you during office hours!
Objectives
The student will be able to discuss the principles of:
- analysis of algorithms,
- divide-and-conquer algorithms,
- graph algorithms,
- dynamic programming, and
- linear programming.
The student will be able to:
- analyze algorithm run time,
- find and solve recurrence relations,
- create and analyze divide-and-conquer, graph, dynamic programming and linear programming algorithms,
- choose suitable algorithms for problems.
Resources
Texts
There is one required text for the course. It is available from the campus bookstore. Additionally, there is a recommended text book for reference. It is not available in the campus bookstore.
Algorithms by Dasgupta, Papadimitriou and Vazirani, ISBN: 978-0-07-352340-8 (required)
This book is required and is the primary text for the course.
Introduction to Algorithms, Third Edition by Cormen, Leiserson, Rivest, and Stein ISBN: 978-0262033848 (recommended)
Computer Labs
You may use departmental computers and software in the Smith Computer Center. Some lab assistants may be able to help with assignments and pass off homework assignments for introductory courses.
Course Web Site
Assignment submissions and grades will be managed in the Canvas System.
Assignments and Exams
Reading
The student is responsible for reading the material in the textbook. A reading schedule is provided with the class schedule on the course website. The student is expected to read the material before the class in which it is discussed. The book also includes material beyond what we will discuss in lecture, which you are encouraged to study on your own. Feel free to bring questions from the reading to lectures or to office hours.
Assignments
A series of problem sets will be assigned. The number of points awarded per problem set may vary depending on the number and difficulty of the problems. The homework will consist of written problems, computer programming, and efficiency analysis. The assignments are designed to promote the course objectives listed above.
Written problems must be submitted via Canvas by the due date and time. PDF format is accepted. Program source code and analysis reports will be submitted via Canvas by the due date and time.
There will be homework due 3 times a week.
Exams
There will be three exams during the semester and one final exam as scheduled during finals week. The exams will be scheduled in the testing center to allow 110 minutes. The final will require the full 110 minutes scheduled for the exam time. The exam topics will be from the recently covered materials. The final exam topics will be comprehensive.
Grading
Your assignment group score will be a floating point number between 0 and 1, found by adding up the number of assignment points obtained, and dividing by the number of possible assignment points.
The three examinations during the semester are worth 100 points each. The final examination is worth 200 points. Your total examination group score will be a floating point number between 0 and 1, found by adding up the number of examination points obtained, and dividing by the number of possible examination points.
Your course score will be a floating number between 0 and 1, found by multiplying your assignment group score and your examination group score.
Your course letter grade will be assigned based on treating your course score as a percentage and looking up the grade in the table below.
Minimum Percentage | Letter Grade | Minimum Percentage | Letter Grade | Minimum Percentage | Letter Grade | Minimum Percentage | Letter Grade |
94 | A | 84 | B | 74 | C | 64 | D |
90 | A- | 80 | B- | 70 | C- | 60 | D- |
87 | B+ | 77 | C+ | 67 | D+ | 0 | F |
Course Policies
Attendance
Students are responsible for material covered and announcements made in class. School-related absences may be made up only if prior arrangements are made. The class schedule presented is approximate. The instructor reserves the right to modify the schedule according to class needs. Changes will be announced in class and posted to the website. Exams and quizzes cannot be made up unless arrangements are made prior to the scheduled time.
Occasional absences are acceptable as long as the student keeps up with assignment work. Students who miss more than two consecutive weeks of class or who miss more than 20% of scheduled classes during the semester without making prior arrangements will receive a failing grade. Students who miss any scheduled exam (including midterm exams and the final exam) or fail to complete a final project without making prior arrangements will receive a failing grade.
Time Commitment
Courses should require about 45 hours of work per credit hour of class. This class will require about 135 hours of work on the part of the student to achieve a passing grade, which is approximately 9 hours per week. If you do not have the time to spend on this course, you should probably rethink your schedule.
Late Policy
Assignments are due on the date specified in the schedule. Handing them in or passing them off after the specified time is considered one day late. You may turn them in up to two school days late with penalties as described below. After two days late, you receive zero points.
For example: if an assignment is due at noon on Thursday:
- Before noon Friday the assignment is considered 1 day late.
- Before noon Monday the assignment is considered 2 days late.
- After noon on Monday the assignment will not be accepted.
Saturdays, Sundays, and school holidays do not count as late days. Late days do not extend beyond the last day of class.
Each student is given five free late days to use over the course of the semester. The lateness of an assignment will be determined according to the rules given above, and the first five late days used during the semester will be forgiven. After that, each late day will result in a 10% penalty.
Important notes:
- Even using free late days, students cannot submit assignments more than two days late and receive credit. No assignments will be accepted more than two days past the original deadline.
- Free late days are applied to the first five late days during the semester. Students cannot control which late days are penalized and which ones forgiven; the first five late days in the semester are forgiven, and the rest are penalized.
- Free late days only apply to students who submit every assignment within the two-day cutoff period. For example, if you fail to submit the fifth assignment, or submit it more than two days late, you will forfeit all free late days, including those used for earlier assignments.
- No other extensions will be granted, except under exceptional circumstances. Students should reserve their free late days to use in the event of illness, emergencies, traveling, sports conflicts, etc. Students are advised not to use their free late days early in the semester, as assignments tend to get more difficult and schedules tighter as the semester progresses.
Collaboration
Limited collaboration with other students in the course is permitted. Students may seek help learning concepts and developing programming skills from whatever sources they have available, and are encouraged to do so. Collaboration on assignments, however, must be confined to course instructors, lab assistants, and other students in the course. Students are free to discuss strategies for solving programming assignments with each other, but this must not extend to the level of programming code. Each student must code his/her own solution to each assignment. See the section on cheating.
Cheating
Cheating will not be tolerated, and will result in a failing grade for the students involved as well as possible disciplinary action from the college. Cheating includes, but is not limited to, turning in homework assignments that are not the student’s own work. It is okay to seek help from others and from reference materials, but only if you learn the material. As a general rule, if you cannot delete your assignment, start over, and re-create it successfully without further help, then your homework is not considered your own work.
You are encouraged to work in groups while studying for tests, discussing class lectures, discussing algorithms for homework solutions, and helping each other identify errors in your homework solutions. If you are unsure if collaboration is appropriate, contact the instructor. Also, note exactly what you did. If your actions are determined to be inappropriate, the response will be much more favorable if you are honest and complete in your disclosure.
Where collaboration is permitted, each student must still create and type in his/her own solution. Any kind of copying and pasting is not okay. If you need help understanding concepts, get it from the instructor or fellow classmates, but never copy another’s code or written work, either electronically or visually. The line between collaborating and cheating is generally one of language: talking about solutions in English or other natural languages is usually okay, while discussions that take place in programming languages are usually not okay. It is a good idea to wait at least 30 minutes after any discussion to start your independent write-up. This will help you commit what you have learned to long-term memory as well as help to avoid crossing the line to cheating.
University Policies
Student absence related to college function
Disability/Accessibility Resources
Utah Tech welcomes all students and strives to make the learning experience accessible. If you are a student with a medical, psychological, or learning disability that may require accommodations for this course, you are encouraged to contact the Disability Resource Center (DRC) as soon as possible. You may request reasonable accommodations at any time during the semester; however, they are not retroactive. The DRC is located next door to the Testing Center in the North Commons Building. (435-652-7516, drc@utahtech.edu).
Title IX Statement
Utah Tech University affirms its commitment to the promotion of fairness in all aspects of the educational institution. Harassment and discrimination – including sex/gender discrimination, gender identity, gender expression, sexual harassment, sexual misconduct, gender-based violence, dating violence, domestic violence, stalking, pregnancy or parental , family or marital status and or retaliation –not only disrupts our commitment to maintaining an environment in which every member of the University community is treated with respect and dignity, but may also violate University policy and federal, state, and/or local law. Should you or someone you know experience behavior that is coercive, discriminatory, harassing, and or sexually violent in nature, or if you or someone you know has questions about their rights and options regarding such behavior, you are encouraged to contact:
Hazel Sainsbury
Dir. Of Equity Compliance, Title IX Coordinator
435.652.7747 (ext. 7747)
hazel.sainsbury@utahtech.edu
titleix@utahtech.edu
Incidents may also be reported directly to law enforcement, either separately or in conjunction with any report made to the University’s Title IX Coordinator, and the University will aid in making contact if requested.
Utah Tech University Police
435.275.4300 or by calling 9-1-1
Maintaining a safe and inclusive University community is a shared responsibility. For more information on how Title IX protections can benefit you and help us keep a productive campus environment, visit titleix.utahtech.edu to learn more.
Email Disclaimer
You are required to frequently check your Utah Tech email account as important class and university information will be sent to this account, including bills, financial aid/scholarship notices, notices of canceled classes, reminders of important dates and deadlines, course information, and other information critical to your success at UT. To access your Utah Tech email account, visit mail.utahtech.edu. Your email account username is Digital-ID@utahtech.edu (e.g. D12345678@utahtech.edu). If you don’t know or have forgotten your Digital-ID or password, please visit changepassword.utahtech.edu.
Useful Resources
NAME | SERVICE |
Utah Tech Student Resources | Visit this site to see many student resources in one place. |
Academic Advisement | Helps students make decisions about their courses and degree path. |
Academic Performance and Tutoring Center | Offers one-on-one tutoring, study hall, and online tutoring to help students in many subjects ranging from Math to Foreign Language. |
Booth Wellness Center | Provides acute health care, referral services, health education, and brief mental health services. |
Campus Life | The Utah Tech University Student Association offers a variety of ways to get involved socially at the university. |
Career Services | Assists students with career exploration, choosing a major, writing a resume, and getting a job. |
Dean of Students Office | Serves as a primary advocate and support network for students. Assists students who are facing personal challenges, including financial, food, and housing concerns. |
Disability Resource Center | Serves students with disabilities by providing equal access to academic programs, non-academic activities, and campus facilities |
DRC Accessibility | A list of DRC services including exam accommodations, ASL interpreting, materials in alternative format, and more. |
Help Desk | Provides assistance for Canvas, Student Email, Student Services, Trailblazers wireless configuration, laptop assistance, and any other technical troubleshooting you may need help with. |
Library | Provides the resources necessary to facilitate research and enhance university curriculum and programs. |
Math Tutoring Center | Students can drop in to work on homework, take tests, and receive individualized or group tutoring. Online tutoring is also available. |
Student Support Services | Provides a variety of free services to help first-generation, low-income, or students with disabilities to complete an associate degree and move on to a bachelor degree. |
Testing Center | Provides all proctored exams on campus and can make accommodations for remotely proctored exams. |
Utah Health Scholars | Provides tutors for upper-division, health-related courses. Students must register into the UHP program to qualify for this free tutoring. |
Veterans Services | Offers tutoring for some classes and arranges tutoring in other centers for other classes. Must have VA benefits to qualify. |
Writing Center | Offers students personalized attention from tutors for writing. |
Important Dates Fall 2025
Click on this link for important dates: https://catalog.utahtech.edu/academiccalendar
Aug 20 - Classes Begin
Aug 26 – Last day to add w/out instructor signature
Aug 29 – $10 drop/audit fee begins ($10 per class)
Sept 1 Labor Day Holiday (no classes)
Sept 2 - Residency application deadline, $100 late registration/payment fee
Sept 10 – Last day for refund; Last day to drop w/out a W, Pell Grant Census
Sept 17 – Last day to add/audit any course w instructor signature
Oct 9-Oct 10 - Semester Break (no classes)
Oct 13 - Midterm grades due
Oct 17 - Last day to drop an individual class
Nov 14 - Last day for complete withdrawal from all classes
Nov 24-Nov 28 - Thanksgiving Break (no classes)
Dec 5 - Classes End
Dec 8 - Dec 11 - Final Exams
Dec 15 Final grades due by instructors
Last Updated 01/08/2024