University of Nevada Las Vegas
Howard R. Hughes College of Engineering
Department of Computer Science
My Home Page

Computer Science 477/677
Analysis of Algorithms
Fall 2022
Course Page and Syllabus

Schedule
Assignments
Handouts
Tests
Interview Questions

Instructor:
Dr. Larmore
Office, TBE B378B. Telephone 702-895-1096. Email: lawrence "dot" larmore "at" unlv "dot" edu
Office Hours:
To be announced
Contacting Me:
You may telephone my office. Please do not leave a telephone message.
It's best to send me email. Be sure to write "CS477" in the subject field so that I know what the message is about. (I delete lots of messages without reading them, based on the subject fields.)
Please, never try to communicate with me by leaving notes on my door, under my door, or in my mailbox in the department office, as those notes get lost, and I can't retrieve them remotely.
If it is necessary to give me something, please leave it with the department staff, and then send me an email message saying that the item has been left for me.
Grader:
Shizhao Wang will be our grader this semester. His email address is wangs12@unlv.nevada.edu. Mr. Wang will give you instructions on how to turn your homework in electronically.
Days of Instruction:
August 30, 2022 - December 8, 2022.
Time of Instruction:
8:30 - 9:45, Tuesday and Thursday.
Place of Instruction:
TBE-B 176.
Thanksgiving Recess:
November 24
Textbook:
Algorithms, by Sanjay Dasgupta, Christos Papadimitriou, and Umesh Vazirani Change from Last Semester
CS 302 (Data Structures)
MAT 251 (Discrete Mathematics II).
Click here if you did not take both CSC 302 and MAT 251 at UNLV and receive a grade of "C" or better in each of those two courses.
Graduate Students:
If you want graduate credit, you must enroll in 677, not 477.
Each CSC 677 student must turn in at least one challenge problem and turn it in by the last week of class.
Here is Updated version of the challenge problems CS 477 students are also permitted to work challenge problems, but I will not permit students to improve a poor grade in this manner. The reason for this policy is that I want students who are doing poorly in the course to devote their energy to mastering the regular material.
Written Homework:
will be assigned, collected, and graded. You are permitted to discuss homework.
Examinations:
First Examination: Thursday, September 29.
Second Examination: Thursday, October 27.
Third Examination: Thursday, November 22.
Final Examination: 8:00 - 10:00 Thursday December 15
Grading:
Your grade will be based on:
  • Three mid-term examinations. 60%
  • Homework. 20%
  • Final examination. 30%
Although the homework will take a substantial amount of time to work, and will actually be harder than the examinations, it counts for a smaller part of the grade. The reason for this is that I allow you to work together on homework. If you work the homework regularly, you should do well on the examinations.
Topics:
  • Modular arithmetic and RSA encryption
  • Sorting
  • Divide and Conquer
  • Dynamic programming
  • Trees, graphs
  • Depth first search
  • Breadth first search
  • Kruskal's algorithms
  • Union/Find
  • Algorithm analysis
  • Recurrence relations: master theorem
  • Loop Invariants
  • Shortest path problem, including Dijksta's algorithm and the A* algorithm
  • NP-completeness