diff --git a/pretext/Graphs/AnAdjacencyList.ptx b/pretext/Graphs/AnAdjacencyList.ptx
index e9a0da8d..5e19f89f 100755
--- a/pretext/Graphs/AnAdjacencyList.ptx
+++ b/pretext/Graphs/AnAdjacencyList.ptx
@@ -19,5 +19,8 @@
to compactly represent a sparse graph. The adjacency list also allows us
to easily find all the links that are directly connected to a particular
vertex.
+
+
+
diff --git a/pretext/Graphs/AnAdjacencyMatrix.ptx b/pretext/Graphs/AnAdjacencyMatrix.ptx
index 213ee7c6..32e781de 100755
--- a/pretext/Graphs/AnAdjacencyMatrix.ptx
+++ b/pretext/Graphs/AnAdjacencyMatrix.ptx
@@ -30,5 +30,8 @@
is connected to every other vertex. There are few real problems that
approach this sort of connectivity. The problems we will look at in this
chapter all involve graphs that are sparsely connected.
+
+
+
diff --git a/pretext/Graphs/AnalysisofDijkstrasAlgorithm.ptx b/pretext/Graphs/AnalysisofDijkstrasAlgorithm.ptx
index a5403684..957173cf 100755
--- a/pretext/Graphs/AnalysisofDijkstrasAlgorithm.ptx
+++ b/pretext/Graphs/AnalysisofDijkstrasAlgorithm.ptx
@@ -11,5 +11,8 @@
for loop is executed once for each edge in the
graph, and within the for loop the call to decreaseKey takes
time O(E\log(V)). So the combined running time is O((V+E) \log(V)).
+
+
+
diff --git a/pretext/Graphs/BreadthFirstSearchAnalysis.ptx b/pretext/Graphs/BreadthFirstSearchAnalysis.ptx
index ac87520b..ed3aedba 100755
--- a/pretext/Graphs/BreadthFirstSearchAnalysis.ptx
+++ b/pretext/Graphs/BreadthFirstSearchAnalysis.ptx
@@ -20,5 +20,8 @@
Finally, at least for this problem, there is the time required to build
the initial graph. We leave the analysis of the buildGraph function
as an exercise for you.
+
+
+
diff --git a/pretext/Graphs/BuildingtheKnightsTourGraph.ptx b/pretext/Graphs/BuildingtheKnightsTourGraph.ptx
index c3d859f6..58302c0e 100755
--- a/pretext/Graphs/BuildingtheKnightsTourGraph.ptx
+++ b/pretext/Graphs/BuildingtheKnightsTourGraph.ptx
@@ -369,5 +369,8 @@ int main() {
}
+
+
+
diff --git a/pretext/Graphs/BuildingtheWordLadderGraph.ptx b/pretext/Graphs/BuildingtheWordLadderGraph.ptx
index e54aa9e2..147eb0be 100644
--- a/pretext/Graphs/BuildingtheWordLadderGraph.ptx
+++ b/pretext/Graphs/BuildingtheWordLadderGraph.ptx
@@ -248,5 +248,8 @@ int main() {
constructed by the buildGraph function has exactly 53,286 edges, so
the matrix would have only 0.20% of the cells filled! That is a very
sparse matrix indeed.
+
+
+
diff --git a/pretext/Graphs/DepthFirstSearchAnalysis.ptx b/pretext/Graphs/DepthFirstSearchAnalysis.ptx
index 9a1f4c3a..5db6548b 100755
--- a/pretext/Graphs/DepthFirstSearchAnalysis.ptx
+++ b/pretext/Graphs/DepthFirstSearchAnalysis.ptx
@@ -8,5 +8,8 @@
recursively if the vertex is white, the loop will execute a maximum of
once for every edge in the graph or O(E). So, the total time
for depth first search is O(V + E).
+
+
+
diff --git a/pretext/Graphs/DijkstrasAlgorithm.ptx b/pretext/Graphs/DijkstrasAlgorithm.ptx
index 2b58ea45..4b67833c 100755
--- a/pretext/Graphs/DijkstrasAlgorithm.ptx
+++ b/pretext/Graphs/DijkstrasAlgorithm.ptx
@@ -196,5 +196,8 @@ def dijkstra(aGraph,start):
+
+
+
diff --git a/pretext/Graphs/DiscussionQuestions.ptx b/pretext/Graphs/DiscussionQuestions.ptx
index a7420105..d87d14f9 100755
--- a/pretext/Graphs/DiscussionQuestions.ptx
+++ b/pretext/Graphs/DiscussionQuestions.ptx
@@ -171,5 +171,8 @@
algorithm?
+
+
+
diff --git a/pretext/Graphs/GeneralDepthFirstSearch.ptx b/pretext/Graphs/GeneralDepthFirstSearch.ptx
index 9f2e264e..0e922c60 100644
--- a/pretext/Graphs/GeneralDepthFirstSearch.ptx
+++ b/pretext/Graphs/GeneralDepthFirstSearch.ptx
@@ -344,5 +344,8 @@ main()
DFS Visualization
+
+
+
diff --git a/pretext/Graphs/Glossary.ptx b/pretext/Graphs/Glossary.ptx
index e624e78d..5c111755 100755
--- a/pretext/Graphs/Glossary.ptx
+++ b/pretext/Graphs/Glossary.ptx
@@ -142,5 +142,8 @@
+
+
+
diff --git a/pretext/Graphs/Implementation.ptx b/pretext/Graphs/Implementation.ptx
index f3b0e4e3..7703cce8 100644
--- a/pretext/Graphs/Implementation.ptx
+++ b/pretext/Graphs/Implementation.ptx
@@ -417,5 +417,8 @@ main()
+
+
+
diff --git a/pretext/Graphs/ImplementingBreadthFirstSearch.ptx b/pretext/Graphs/ImplementingBreadthFirstSearch.ptx
index edd815e3..996c90bf 100755
--- a/pretext/Graphs/ImplementingBreadthFirstSearch.ptx
+++ b/pretext/Graphs/ImplementingBreadthFirstSearch.ptx
@@ -434,4 +434,7 @@ int main() {
}
+
+
+
diff --git a/pretext/Graphs/ImplementingKnightsTour.ptx b/pretext/Graphs/ImplementingKnightsTour.ptx
index bc267e09..9aea0f6c 100644
--- a/pretext/Graphs/ImplementingKnightsTour.ptx
+++ b/pretext/Graphs/ImplementingKnightsTour.ptx
@@ -203,6 +203,8 @@ def knightTour(n,path,u,limit):
done = True:
return done:
-
+
+
+
diff --git a/pretext/Graphs/KnightsTourAnalysis.ptx b/pretext/Graphs/KnightsTourAnalysis.ptx
index 310e5ee3..4edde1fd 100755
--- a/pretext/Graphs/KnightsTourAnalysis.ptx
+++ b/pretext/Graphs/KnightsTourAnalysis.ptx
@@ -184,5 +184,8 @@ def orderByAvail(n):
+
+
+
diff --git a/pretext/Graphs/Matching.ptx b/pretext/Graphs/Matching.ptx
index a6dd21b7..eb0a0963 100644
--- a/pretext/Graphs/Matching.ptx
+++ b/pretext/Graphs/Matching.ptx
@@ -63,4 +63,7 @@
+
+
+
diff --git a/pretext/Graphs/Objectives.ptx b/pretext/Graphs/Objectives.ptx
index ee02d038..6d36cc5c 100755
--- a/pretext/Graphs/Objectives.ptx
+++ b/pretext/Graphs/Objectives.ptx
@@ -40,4 +40,7 @@
Flowchart outlining the prerequisites for a Computer Science major. The chart begins with 'Math-151' leading into 'CS-220'. Below this, 'CS-150' points to 'CS-151', which in turn branches into 'CS-250' and 'CS-230'. 'CS-230' continues to 'CS-466', and 'CS-151' also points to 'CS-360', which then leads to 'CS-490'. Additionally, 'CS-360' branches off to 'CS-477'. Each course is represented as a node, and the arrows indicate the prerequisite relationship, where one course must be completed before moving on to the next.
+
+
+
diff --git a/pretext/Graphs/PrimsSpanningTreeAlgorithm.ptx b/pretext/Graphs/PrimsSpanningTreeAlgorithm.ptx
index 533c400b..0a9aa229 100755
--- a/pretext/Graphs/PrimsSpanningTreeAlgorithm.ptx
+++ b/pretext/Graphs/PrimsSpanningTreeAlgorithm.ptx
@@ -231,5 +231,8 @@ def prim(G,start):
+
+
+
diff --git a/pretext/Graphs/ProgrammingExercises.ptx b/pretext/Graphs/ProgrammingExercises.ptx
index 75b6e808..e018876e 100755
--- a/pretext/Graphs/ProgrammingExercises.ptx
+++ b/pretext/Graphs/ProgrammingExercises.ptx
@@ -41,5 +41,8 @@
river.
+
+
+
diff --git a/pretext/Graphs/ShortestPathProblems.ptx b/pretext/Graphs/ShortestPathProblems.ptx
index b80a9fcd..ba313551 100755
--- a/pretext/Graphs/ShortestPathProblems.ptx
+++ b/pretext/Graphs/ShortestPathProblems.ptx
@@ -68,5 +68,8 @@ Routers from One Host to the Next over the Internet
first search, except that here we are concerned with the total weight of
the path rather than the number of hops in the path. It should be noted
that if all the weights are equal, the problem is the same.
+
+
+
diff --git a/pretext/Graphs/StronglyConnectedComponents.ptx b/pretext/Graphs/StronglyConnectedComponents.ptx
index 56844aa3..7bc33483 100755
--- a/pretext/Graphs/StronglyConnectedComponents.ptx
+++ b/pretext/Graphs/StronglyConnectedComponents.ptx
@@ -131,5 +131,8 @@
The diagram shows a directed graph illustrating the concept of strongly connected components within a network of nodes. Each node is labeled with a letter from A to I and a pair of numbers, which could represent the sequence in which a depth-first search algorithm processed them. The graph is organized with directed edges forming paths between the nodes, suggesting the presence of subgraphs where each node is reachable from every other node within the same subgraph. This kind of representation is commonly used in computer science to illustrate algorithms that identify strongly connected components within a graph, which are maximal sets of vertices with a path to every other vertex in the set.
+
+
+
diff --git a/pretext/Graphs/Summary.ptx b/pretext/Graphs/Summary.ptx
index 407b6f7e..056774d8 100755
--- a/pretext/Graphs/Summary.ptx
+++ b/pretext/Graphs/Summary.ptx
@@ -25,5 +25,8 @@
Minimum weight spanning trees for broadcasting messages.
+
+
+
diff --git a/pretext/Graphs/TheGraphAbstractDataType.ptx b/pretext/Graphs/TheGraphAbstractDataType.ptx
index 6f05ab0a..458cfb3f 100755
--- a/pretext/Graphs/TheGraphAbstractDataType.ptx
+++ b/pretext/Graphs/TheGraphAbstractDataType.ptx
@@ -55,5 +55,8 @@ Reading Question
+
+
+
diff --git a/pretext/Graphs/TheKnightsTourProblem.ptx b/pretext/Graphs/TheKnightsTourProblem.ptx
index a2425120..d8998fe5 100755
--- a/pretext/Graphs/TheKnightsTourProblem.ptx
+++ b/pretext/Graphs/TheKnightsTourProblem.ptx
@@ -26,5 +26,8 @@
visited exactly once.
+
+
+
diff --git a/pretext/Graphs/TheWordLadderProblem.ptx b/pretext/Graphs/TheWordLadderProblem.ptx
index 62bd911c..e20ad0e9 100755
--- a/pretext/Graphs/TheWordLadderProblem.ptx
+++ b/pretext/Graphs/TheWordLadderProblem.ptx
@@ -32,5 +32,8 @@ SAGE
efficient path from the starting word to the ending word.
+
+
+
diff --git a/pretext/Graphs/TopologicalSorting.ptx b/pretext/Graphs/TopologicalSorting.ptx
index c977c64e..f2f685be 100755
--- a/pretext/Graphs/TopologicalSorting.ptx
+++ b/pretext/Graphs/TopologicalSorting.ptx
@@ -67,6 +67,8 @@
Alt text for Figure 29: This image shows the result of a topological sort on a directed acyclic graph representing the steps for making pancakes. The sequence begins with "1 Tbl Oil" at step 17/18, followed by "1 egg" at step 15/16, "3/4 cup milk" at step 1/12, and "1 cup mix" at step 2/11. The next steps are "heat griddle" at step 13/14, "heat syrup" at step 9/10, "pour 1/4 cup" at step 3/8, and "turn when bubbly" at step 4/7. The final action is "eat" at step 5/6. Each step is depicted as an oval, connected by directed paths that indicate the order of operations, with numbers denoting the order in the topological sort.
-
+
+
+
diff --git a/pretext/Graphs/VocabularyandDefinitions.ptx b/pretext/Graphs/VocabularyandDefinitions.ptx
index 04c644e1..8c5adc7d 100755
--- a/pretext/Graphs/VocabularyandDefinitions.ptx
+++ b/pretext/Graphs/VocabularyandDefinitions.ptx
@@ -95,5 +95,8 @@
+
+
+