CatgirlIntelligenceAgency/run/test-data/CSc 22000 Algorithms.html

241 lines
5.5 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>CSc 22000: Algorithms</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" href="../class.css" type="text/css">
</head>
<body>
<table border=0 cellpadding=0 width="100%">
<tr>
<td align=center valign=center width="20%">
<img src="../logo-ccny.png">
</td>
<td align=center valign=top>
<h1 class="head">Fundamental Algorithms</h1>
<h2 class="title">CSc I0600&ndash;Fall 2021</h2>
</td>
<td align=center valign=center width="20%">
<font color=red size="-1">
<a href="http://www.ccny.cuny.edu">The City College of CUNY</a><br>
<a href="http://www-cs.ccny.cuny.edu/">Department of Computer Science</a>
</font>
</td>
</tr>
</table>
<p>
<b>Instructor</b>:
<a href="http://www-cs.ccny.cuny.edu/~fazio/">Prof. Nelly Fazio</a><br>
<b>Lectures</b>: Wednesday, 4:50pm&ndash;7:20pm, Online<br>
<b>Office hours</b>: Thursdays, 11:00am&ndash;12:00pm (and by
appointment), Online<br>
<b> Email</b>: fazio AT cs DOT ccny DOT cuny DOT edu
[<i>Put <font color=red>CScI0600</font> in Subject line</i>]
<hr>
<p class="centered">
[ <a href="#description">Course Description</a> |
<a href="#topics">List of Topics</a> |
<a href="#textbook">Textbook</a> |
<a href="#grading">Work Load & Grading</a> |
<a href="#integrity">CUNY Academic Integrity Policy</a> |
<a href="#assignments">Assignments</a> |
<a href="#schedule">Weekly Schedule</a> ]
</p>
<hr>
<h2 class="subtitle bar"><a name="description"></a>Course Description</h2>
From the course catalog: An intensive study of advanced non-numerical
programming techniques. Data representation; list, tree and string
manipulation algorithms. Recursive programming. Introduction to
searching and sorting. Storage management algorithms. Comparative
efficiency of algorithms.
<p>
Prerequisites: CSc 220.
<h2 class="subtitle bar"><a name="textbook"></a>Textbook</h2>
Required:
<ul>
<li> <b> Introduction to Algorithms. 3rd Edition</b><br>
T. Cormen, C. Leiserson, R. Rivest, C. Stein, 2009.<br>
ISBN-10: 0262033844 <br>
ISBN-13: 978-0262033848
</ul>
<h2 class="subtitle bar"><a name="grading"></a>Work Load & Grading</h2>
<ul>
<li><b>Work load</b><br>
2.5 hrs/week: Class attendance <br>
2.5 hrs/week: Readings<br>
5.0 hrs/week: Assignments
<li><b>Grading</b><br>
10%: Class participation <br>
20%: Quizzes <br>
30%: Midterm (Nov 3)<br>
40%: Final (Dec 15)
</ul>
<b>NOTE:</b> There will be NO make-up or substitute exams</b>
</center>
<h2 class="subtitle bar"><a name="integrity"></a>CUNY Academic Integrity
Policy</h2>
Cheating will not be tolerated. If you cheat, you risk losing your
position as a student in the department and the college. CUNY policy
on academic integrity can be found <a href="https://www.cuny.edu/about/administration/offices/legal-affairs/policies-procedures/academic-integrity-policy">here</a>.
Failure to understand and follow these rules will constitute cheating,
and will be dealt with as per university guidelines.
<h2 class="subtitle bar"><a name="assignments"></a>Assignments</h2>
Posted on blackboard.
<h2 class="subtitle bar"><a name="schedule"></a>Weekly Schedule <font color=red>(tentative)</font></h2>
<div align=center>
<table border=2 cellpadding=2>
<tr>
<td><b>Lecture</b></td>
<td><b>Topic</b></td>
<td><b>Readings</b></td>
</tr>
<tr>
<td><b>1</b></td>
<td>Overview. Growth of functions. Asymptotic
notation. InsertionSort.<br>
Divide-and-Conquer. Examples. MergeSort.</td>
<td>CLRS 1&ndash;3 <br>
Review CLRS 10, 11, 12</font>
</td>
</tr>
<tr>
<td><b>2</b></td>
<td> Solving recurrence: Recursion-tree method. Examples.<br>
More on Divide-and-Conquer: Maximum Subarray. Matrix multiplication.</td>
<td>CLRS 4.1&ndash;4.2, 4.4. <br>
Review Appendix A</td>
</tr>
<tr>
<td><b>3</b></td>
<td> Solving recurrences: Substitution method. Examples. <br>
Solving recurrences: Master method. Examples.</td>
<td>CLRS 4.3, 4.5</td>
</tr>
<tr>
<td><b>4</b></td>
<td>Sorting Algorithms: Heapsort.</td>
<td>CLRS 6</td>
</tr>
<tr>
<td><b>5</b></td>
<td>Sorting Algorithms: Quicksort.</td>
<td>CLRS 7</td>
</tr>
<tr>
<td><b>6</b></td>
<td>More on sorting: Lower bound and beyond.<br>
</td>
<td>CLRS 8</td>
</tr>
<!--<tr>
<td><b>7</b></td>
<td>Balanced Search Trees: Red-Black Trees.</td>
<td>CLRS 13<br>Review CLRS 12</td>
</tr>
-->
<tr>
<td><b>7</b></td>
<td>Balanced Search Trees: B-Trees.</td>
<td>CLRS 18</td>
</tr>
<tr>
<td><b>8</b></td>
<td>Dynamic Programming (I). Example: Rod Cutting.
</td>
<td>CLRS 15</td>
</tr>
<tr>
<td><b>9</b></td>
<td>Dynamic Programming (II). Example: Longest Common Subsequence.</td>
<td>CLRS 15</td>
</tr>
<tr>
<td><b>10</b></td>
<td>
<font color=red>Midterm Exam. (Nov. 3)<font>
</font>
</td>
<td>&nbsp;</td>
</tr>
<tr>
<td><b>11</b></td>
<td>Greedy Algorithms. Huffman Codes.</td>
<td>CLRS 16</td>
</tr>
<tr>
<td><b>12</b></td>
<td>Graphs. BFS and DFS.
Topological Sort. SCC.</td>
<td>CLRS 22</td>
</tr>
<tr>
<td><b>13</b></td>
<td>Minimum Spanning Trees.</td>
<td>CLRS 23</td>
</tr>
<tr>
<td><b>14</b></td>
<td>Shortest Paths: Bellman-Ford algorithm. <br>
Single-Source Shortest Paths for DAGs + Dijkstra.<br>
All-Pairs Shortest Paths: Floyd-Warshall.</td>
<td>CLRS 24, 25</td>
</tr>
<tr>
<td></td>
<td><font color=red>Final Exam, Dec 15, 2021, 5:00-7:20pm</font></td>
<td></td>
</tr>
</table>
</div>
<hr>
<p>
Copyright &copy; <a href="">Nelly Fazio</a>
</body>
</html>