B AB 5 C AC 3 D ABGED 9 E ABGE 7 F ABGEF 8 G ABG 6 A BEDA 3 C BC 1 D BCD 2 E BE 1 F BEF 2 G BG 1


 Joy Sharp
 2 years ago
 Views:
Transcription
1 p a. Find the shortest path from A to all other vertices for the graph in Figure 9.8. b. Find the shortest unweighted path from B to all other vertices for the graph in Figure 9.8. A 5 B C D G F E a. source destination path cost A B AB 5 C AC D ABGED 9 E ABGE 7 F ABGEF 8 G ABG 6 b. Source Destination path cost B A BEDA C BC D BCD E BE F BEF G BG p. 9. (ZOJ 56) a. Explain how to modify Dijkstra's algorithm to produce a count of the number of different minimum paths from v to w. b. Explain how to modify Dijkstra's algorithm so that if there is more than one minimum path from v to w, a path with the fewest number of edges is chosen.
2 Answer a: void Dijkstra( Table T ) /* T[ ].Count is initialized to be. T[start].Count = */ vertex v, w; for ( ; ; ) v = smallest unknown distance vertex; if ( v == NotAVertex ) break; T[v].Known = True; for ( each w adjacent to v ) if(!t[w].known ) if( T[v].Dist + Cvw < T[w].Dist ) Decrease( T[w].Dist to T[v]+Cvw ) T[w].Path = v; T[w].Count = T[v].Count; /* NOT T[w].Count = */ else if( T[v].Dist + Cvw == T[w].Dist ) T[w].Count += T[v].Count; /* NOT T[w].Count += */ Answer b: void Dijkstra( Table T ) /* T[ ].Count is initialized to be */ vertex v, w; for ( ; ; ) v = smallest unknown distance vertex; if ( v == NotAVertex ) break; T[v].Known = True; for ( each w adjacent to v ) if(!t[w].known ) if( T[v].Dist + Cvw < T[w].Dist ) Decrease( T[w].Dist to T[v]+Cvw ) T[w].Path = v; T[w].Count = T[v].Count + ; else if( ( T[v].Dist + Cvw == T[w].Dist ) && ( T[v].Count + < T[w].Count ) ) T[w].Count = T[v].Count + ; T[w].Path = v; /* DO NOT forget this */
3 p. 9. Find the maximum flow in the network of Figure Answer: A B C s D E F 6 G H I t p. 9.5 a. Find a minimum spanning tree for the graph in Figure 9.8 using both Prim's and Kruskal's algorithms. b. Is this minimum spanning tree unique? Why? Answer a: They are the same A B C D E F G H I 7 J Answer b: This minimum spanning tree is not unique. For example, another minimum spanning tree obtained from Prim s algorithm is: A B C D E F G H I 7 J
4 p Write a program to find the strongly connected components in a digraph. #define MaxVertices /* maximum number of vertices */ typedef int Vertex; /* vertices are numbered from to MaxVertices */ typedef enum FALSE, TRUE boolean; /* declarations for a graph with adjacency list representation */ #ifndef _Graph_h struct VNode; typedef struct VNode *PtrToVNode; struct GNode; typedef struct GNode *PtrToGNode; typedef PtrToGNode Graph; /* create a graph with NumOfVertices vertices and no edge */ Graph CreateGraph( int NumOfVertices ); /* insert edge V>W to G */ boolean InsertEdge( Vertex V, Vertex W, Graph G ); /* reverse all the edges in G and return the resulting graph Gr */ Graph ReverseGraph( Graph G ); /* free spaces taken by G */ void DeleteGraph( Graph G ); /* implementations of the above functions are omitted */ #endif /*_Graph_h */ struct VNode Vertex Vert; PtrToVNode Next; ; struct GNode int NumOfVertices; int NumOfEdges; PtrToVNode *Array; ; boolean Visited[MaxVertices]; /* global mark for visited vertices */ Vertex DfsOrder[MaxVertices]; /* store vertices in dfs order */ int DfsNum; /* dfs number for vertices */
5 void PostOrder( Vertex V ) /* store vertices during postorder dfs */ DfsOrder[DfsNum++] = V; void PrintV( Vertex V ) /* print V during postorder dfs */ printf("%d ", V); void PostorderDfs( Vertex V, Graph G, void (*f)(vertex V) ) /* postorder dfs template with visiting function f */ PtrToVNode W; Visited[V] = TRUE; for ( W=G>Array[V]>Next; W; W=W>Next ) if (!Visited[W>Vert] ) PostorderDfs( W>Vert, G, (*f) ); (*f)(v); void StronglyConnectedComponents( Graph G ) /* print the strongly connected components in G */ /* output format: V, V,... V, V, */ Graph Gr; Vertex V; /* Step : mark the postorder dfs number for each vertex in G */ InitializeVisited( G>NumOfVertices ); /* Visited[ ] is initialized to be FALSE */ DfsNum = ; for ( V=; V<G>NumOfVertices; V++ ) if (!Visited[V] ) PostorderDfs( V, G, PostOrder ); /* end for */ /* Step : reverse edges in G and save the resulting graph in Gr */ Gr = ReverseGraph( G ); if (!Gr )
6 printf("program failed: cannot reverse graph.\n"); else /* Step : print components by postorder dfs on Gr */ InitializeVisited( Gr>NumOfVertices ); while ( DfsNum ) /* always start at the vertex with the largest dfs number */ V = DfsOrder[DfsNum]; if (!Visited[V] ) /* print this component in a line*/ printf( " " ); PostorderDfs( V, Gr, PrintV ); printf( "\n" ); /* end  if */ /* end  while */ DeleteGraph( Gr ); /* free space */ /* end  else */ Sketch of the proof of correctness:. V, W Comp(G) Path(V>W) and Path(W>V) in both G and Gr;. V, W Comp(G) V, W DfsT(G) and DfsT(Gr);. For V DfsT(Gr) with X as the root, Path(X>V) in Gr, and hence Path(V>X) in G.. Step V, X DfsT(G); 5. DfsNum(X) > DfsNum(V) V must be numbered before X in DfsT(G); 6. Step 5 V is a descendant of X in DfsT(G) since it was a postorder visit; 7. Step 6 Path(X>V) in G. G/G r DfsT(G) DfsT(G r )
Minimum Spanning Trees
Minimum Spanning Trees Algorithms and 18.304 Presentation Outline 1 Graph Terminology Minimum Spanning Trees 2 3 Outline Graph Terminology Minimum Spanning Trees 1 Graph Terminology Minimum Spanning Trees
More informationChapter There are nonisomorphic rooted trees with four vertices. Ans: 4.
Use the following to answer questions 126: In the questions below fill in the blanks. Chapter 10 1. If T is a tree with 999 vertices, then T has edges. 998. 2. There are nonisomorphic trees with four
More informationCSE 326, Data Structures. Sample Final Exam. Problem Max Points Score 1 14 (2x7) 2 18 (3x6) 3 4 4 7 5 9 6 16 7 8 8 4 9 8 10 4 Total 92.
Name: Email ID: CSE 326, Data Structures Section: Sample Final Exam Instructions: The exam is closed book, closed notes. Unless otherwise stated, N denotes the number of elements in the data structure
More informationData Structures and Algorithms Written Examination
Data Structures and Algorithms Written Examination 22 February 2013 FIRST NAME STUDENT NUMBER LAST NAME SIGNATURE Instructions for students: Write First Name, Last Name, Student Number and Signature where
More informationMath 443/543 Graph Theory Notes 4: Connector Problems
Math 443/543 Graph Theory Notes 4: Connector Problems David Glickenstein September 19, 2012 1 Trees and the Minimal Connector Problem Here is the problem: Suppose we have a collection of cities which we
More informationTheorem A graph T is a tree if, and only if, every two distinct vertices of T are joined by a unique path.
Chapter 3 Trees Section 3. Fundamental Properties of Trees Suppose your city is planning to construct a rapid rail system. They want to construct the most economical system possible that will meet the
More informationHome Page. Data Structures. Title Page. Page 1 of 24. Go Back. Full Screen. Close. Quit
Data Structures Page 1 of 24 A.1. Arrays (Vectors) nelement vector start address + ielementsize 0 +1 +2 +3 +4... +n1 start address continuous memory block static, if size is known at compile time dynamic,
More informationCpt S 223. School of EECS, WSU
The Shortest Path Problem 1 ShortestPath Algorithms Find the shortest path from point A to point B Shortest in time, distance, cost, Numerous applications Map navigation Flight itineraries Circuit wiring
More informationSEMITOTAL AND TOTAL BLOCKCUTVERTEX GRAPH
CHAPTER 3 SEMITOTAL AND TOTAL BLOCKCUTVERTEX GRAPH ABSTRACT This chapter begins with the notion of block distances in graphs. Using block distance we defined the central tendencies of a block, like Bradius
More informationCMSC 451: Graph Properties, DFS, BFS, etc.
CMSC 451: Graph Properties, DFS, BFS, etc. Slides By: Carl Kingsford Department of Computer Science University of Maryland, College Park Based on Chapter 3 of Algorithm Design by Kleinberg & Tardos. Graphs
More informationGraph. Consider a graph, G in Fig Then the vertex V and edge E can be represented as:
Graph A graph G consist of 1. Set of vertices V (called nodes), (V = {v1, v2, v3, v4...}) and 2. Set of edges E (i.e., E {e1, e2, e3...cm} A graph can be represents as G = (V, E), where V is a finite and
More informationSolutions to Exercises 8
Discrete Mathematics Lent 2009 MA210 Solutions to Exercises 8 (1) Suppose that G is a graph in which every vertex has degree at least k, where k 1, and in which every cycle contains at least 4 vertices.
More informationSocial Media Mining. Graph Essentials
Graph Essentials Graph Basics Measures Graph and Essentials Metrics 2 2 Nodes and Edges A network is a graph nodes, actors, or vertices (plural of vertex) Connections, edges or ties Edge Node Measures
More information2. (a) Explain the strassen s matrix multiplication. (b) Write deletion algorithm, of Binary search tree. [8+8]
Code No: R05220502 Set No. 1 1. (a) Describe the performance analysis in detail. (b) Show that f 1 (n)+f 2 (n) = 0(max(g 1 (n), g 2 (n)) where f 1 (n) = 0(g 1 (n)) and f 2 (n) = 0(g 2 (n)). [8+8] 2. (a)
More informationMGF 1107 CH 15 LECTURE NOTES Denson. Section 15.1
1 Section 15.1 Consider the house plan below. This graph represents the house. Consider the mail route below. This graph represents the mail route. 2 Definitions 1. Graph a structure that describes relationships.
More informationLong questions answer Advanced Mathematics for Computer Application If P= , find BT. 19. If B = 1 0, find 2B and 3B.
Unit1: Matrix Algebra Short questions answer 1. What is Matrix? 2. Define the following terms : a) Elements matrix b) Row matrix c) Column matrix d) Diagonal matrix e) Scalar matrix f) Unit matrix OR
More informationHomework 15 Solutions
PROBLEM ONE (Trees) Homework 15 Solutions 1. Recall the definition of a tree: a tree is a connected, undirected graph which has no cycles. Which of the following definitions are equivalent to this definition
More information1. Sorting (assuming sorting into ascending order) a) BUBBLE SORT
DECISION 1 Revision Notes 1. Sorting (assuming sorting into ascending order) a) BUBBLE SORT Make sure you show comparisons clearly and label each pass First Pass 8 4 3 6 1 4 8 3 6 1 4 3 8 6 1 4 3 6 8 1
More informationGRAPH THEORY and APPLICATIONS. Trees
GRAPH THEORY and APPLICATIONS Trees Properties Tree: a connected graph with no cycle (acyclic) Forest: a graph with no cycle Paths are trees. Star: A tree consisting of one vertex adjacent to all the others.
More informationAlgorithms and Data Structures (INF1) Lecture 14/15 Hua Lu
Algorithms and Data Structures (INF1) Lecture 14/15 Hua Lu Department of Computer Science Aalborg University Fall 2007 This Lecture Shortest paths Problem preliminary Shortest paths in DAG BellmanMoore
More information12 Abstract Data Types
12 Abstract Data Types 12.1 Source: Foundations of Computer Science Cengage Learning Objectives After studying this chapter, the student should be able to: Define the concept of an abstract data type (ADT).
More informationMATHEMATICS Unit Decision 1
General Certificate of Education January 2008 Advanced Subsidiary Examination MATHEMATICS Unit Decision 1 MD01 Tuesday 15 January 2008 9.00 am to 10.30 am For this paper you must have: an 8page answer
More informationOutput: 12 18 30 72 90 87. struct treenode{ int data; struct treenode *left, *right; } struct treenode *tree_ptr;
50 20 70 10 30 69 90 14 35 68 85 98 16 22 60 34 (c) Execute the algorithm shown below using the tree shown above. Show the exact output produced by the algorithm. Assume that the initial call is: prob3(root)
More informationAnalysis of Algorithms, I
Analysis of Algorithms, I CSOR W4231.002 Eleni Drinea Computer Science Department Columbia University Thursday, February 26, 2015 Outline 1 Recap 2 Representing graphs 3 Breadthfirst search (BFS) 4 Applications
More informationDynamic Programming. Applies when the following Principle of Optimality
Dynamic Programming Applies when the following Principle of Optimality holds: In an optimal sequence of decisions or choices, each subsequence must be optimal. Translation: There s a recursive solution.
More informationThe relationship of a trees to a graph is very important in solving many problems in Maths and Computer Science
Trees Mathematically speaking trees are a special class of a graph. The relationship of a trees to a graph is very important in solving many problems in Maths and Computer Science However, in computer
More informationDefinition. E.g. : Attempting to represent a transport link data with a tree structure:
The ADT Graph Recall the ADT binary tree: a tree structure used mainly to represent 1 to 2 relations, i.e. each item has at most two immediate successors. Limitations of tree structures: an item in a tree
More informationIE 680 Special Topics in Production Systems: Networks, Routing and Logistics*
IE 680 Special Topics in Production Systems: Networks, Routing and Logistics* Rakesh Nagi Department of Industrial Engineering University at Buffalo (SUNY) *Lecture notes from Network Flows by Ahuja, Magnanti
More informationMinimum Spanning Trees
Minimum Spanning Trees weighted graph API cycles and cuts Kruskal s algorithm Prim s algorithm advanced topics References: Algorithms in Java, Chapter 20 http://www.cs.princeton.edu/introalgsds/54mst 1
More informationThe following themes form the major topics of this chapter: The terms and concepts related to trees (Section 5.2).
CHAPTER 5 The Tree Data Model There are many situations in which information has a hierarchical or nested structure like that found in family trees or organization charts. The abstraction that models hierarchical
More informationA tree can be defined in a variety of ways as is shown in the following theorem: 2. There exists a unique path between every two vertices of G.
7 Basic Properties 24 TREES 7 Basic Properties Definition 7.1: A connected graph G is called a tree if the removal of any of its edges makes G disconnected. A tree can be defined in a variety of ways as
More informationChapter 4. Trees. 4.1 Basics
Chapter 4 Trees 4.1 Basics A tree is a connected graph with no cycles. A forest is a collection of trees. A vertex of degree one, particularly in a tree, is called a leaf. Trees arise in a variety of applications.
More informationCS2 Algorithms and Data Structures Note 11. BreadthFirst Search and Shortest Paths
CS2 Algorithms and Data Structures Note 11 BreadthFirst Search and Shortest Paths In this last lecture of the CS2 Algorithms and Data Structures thread we will consider the problem of computing distances
More informationAny two nodes which are connected by an edge in a graph are called adjacent node.
. iscuss following. Graph graph G consist of a non empty set V called the set of nodes (points, vertices) of the graph, a set which is the set of edges and a mapping from the set of edges to a set of pairs
More informationGraph Algorithms using MapReduce
Graph Algorithms using MapReduce Graphs are ubiquitous in modern society. Some examples: The hyperlink structure of the web 1/7 Graph Algorithms using MapReduce Graphs are ubiquitous in modern society.
More informationData Structures in Java. Session 16 Instructor: Bert Huang
Data Structures in Java Session 16 Instructor: Bert Huang http://www.cs.columbia.edu/~bert/courses/3134 Announcements Homework 4 due next class Remaining grades: hw4, hw5, hw6 25% Final exam 30% Midterm
More informationTrees and Fundamental Circuits
Trees and Fundamental Circuits Tree A connected graph without any circuits. o must have at least one vertex. o definition implies that it must be a simple graph. o only finite trees are being considered
More informationCOS 226 Algorithms and Data Structures Fall Final
COS 22 Algorithms and Data Structures Fall 200 Final This test has 4 questions worth a total of 00 points. You have 80 minutes. The exam is closed book, except that you are allowed to use a one page cheatsheet
More informationData Structure with C
Subject: Data Structure with C Topic : Tree Tree A tree is a set of nodes that either:is empty or has a designated node, called the root, from which hierarchically descend zero or more subtrees, which
More information2.3 Scheduling jobs on identical parallel machines
2.3 Scheduling jobs on identical parallel machines There are jobs to be processed, and there are identical machines (running in parallel) to which each job may be assigned Each job = 1,,, must be processed
More informationTrees. Definition: A tree is a connected undirected graph with no simple circuits. Example: Which of these graphs are trees?
Section 11.1 Trees Definition: A tree is a connected undirected graph with no simple circuits. Example: Which of these graphs are trees? Solution: G 1 and G 2 are trees both are connected and have no simple
More informationGRAPH THEORY LECTURE 4: TREES
GRAPH THEORY LECTURE 4: TREES Abstract. 3.1 presents some standard characterizations and properties of trees. 3.2 presents several different types of trees. 3.7 develops a counting method based on a bijection
More informationChapter 4: Trees. 2. Theorem: Let T be a graph with n vertices. Then the following statements are equivalent:
9 Properties of Trees. Definitions: Chapter 4: Trees forest  a graph that contains no cycles tree  a connected forest. Theorem: Let T be a graph with n vertices. Then the following statements are equivalent:
More informationGraphs. Graph G=(V,E): representation
Graphs G = (V,E) V the vertices of the graph {v 1, v 2,..., v n } E the edges; E a subset of V x V A cost function cij is the cost/ weight of the edge (v i, v j ) Graph G=(V,E): representation 1. Adjacency
More informationEdges = communication links Vertices = computers, switches, routers, etc. For packet inbound at a particular vertex, determine what output edge to use
IP Routing Networks as Graphs Networks are graphs Edges = communication links Vertices = computers, switches, routers, etc For packet inbound at a particular vertex, determine what output edge to use Routers
More informationPart 2: Community Detection
Chapter 8: Graph Data Part 2: Community Detection Based on Leskovec, Rajaraman, Ullman 2014: Mining of Massive Datasets Big Data Management and Analytics Outline Community Detection  Social networks 
More informationLecture Notes on Spanning Trees
Lecture Notes on Spanning Trees 15122: Principles of Imperative Computation Frank Pfenning Lecture 26 April 26, 2011 1 Introduction In this lecture we introduce graphs. Graphs provide a uniform model
More informationNotes on Matrix Multiplication and the Transitive Closure
ICS 6D Due: Wednesday, February 25, 2015 Instructor: Sandy Irani Notes on Matrix Multiplication and the Transitive Closure An n m matrix over a set S is an array of elements from S with n rows and m columns.
More informationLoad balancing Static Load Balancing
Chapter 7 Load Balancing and Termination Detection Load balancing used to distribute computations fairly across processors in order to obtain the highest possible execution speed. Termination detection
More informationData Structure [Question Bank]
Unit I (Analysis of Algorithms) 1. What are algorithms and how they are useful? 2. Describe the factor on best algorithms depends on? 3. Differentiate: Correct & Incorrect Algorithms? 4. Write short note:
More informationNetwork (Tree) Topology Inference Based on Prüfer Sequence
Network (Tree) Topology Inference Based on Prüfer Sequence C. Vanniarajan and Kamala Krithivasan Department of Computer Science and Engineering Indian Institute of Technology Madras Chennai 600036 vanniarajanc@hcl.in,
More informationThe number of marks is given in brackets [ ] at the end of each question or part question. The total number of marks for this paper is 72.
ADVANCED SUBSIDIARY GCE UNIT 4736/01 MATHEMATICS Decision Mathematics 1 THURSDAY 14 JUNE 2007 Afternoon Additional Materials: Answer Booklet (8 pages) List of Formulae (MF1) Time: 1 hour 30 minutes INSTRUCTIONS
More informationLoad Balancing and Termination Detection
Chapter 7 Load Balancing and Termination Detection 1 Load balancing used to distribute computations fairly across processors in order to obtain the highest possible execution speed. Termination detection
More informationOrdered Lists and Binary Trees
Data Structures and Algorithms Ordered Lists and Binary Trees Chris Brooks Department of Computer Science University of San Francisco Department of Computer Science University of San Francisco p.1/62 60:
More informationOverview of Data Structures
UNIT 3 Concrete Data Types Classification of Data Structures Concrete vs. Abstract Data Structures Most Important Concrete Data Structures Arrays Records Linked Lists Binary Trees Overview of Data Structures
More informationForests and Trees: A forest is a graph with no cycles, a tree is a connected forest.
2 Trees What is a tree? Forests and Trees: A forest is a graph with no cycles, a tree is a connected forest. Theorem 2.1 If G is a forest, then comp(g) = V (G) E(G). Proof: We proceed by induction on E(G).
More informationExam study sheet for CS2711. List of topics
Exam study sheet for CS2711 Here is the list of topics you need to know for the final exam. For each data structure listed below, make sure you can do the following: 1. Give an example of this data structure
More informationOutline. NPcompleteness. When is a problem easy? When is a problem hard? Today. Euler Circuits
Outline NPcompleteness Examples of Easy vs. Hard problems Euler circuit vs. Hamiltonian circuit Shortest Path vs. Longest Path 2pairs sum vs. general Subset Sum Reducing one problem to another Clique
More informationWhy? A central concept in Computer Science. Algorithms are ubiquitous.
Analysis of Algorithms: A Brief Introduction Why? A central concept in Computer Science. Algorithms are ubiquitous. Using the Internet (sending email, transferring files, use of search engines, online
More informationExamination paper for MA0301 Elementær diskret matematikk
Department of Mathematical Sciences Examination paper for MA0301 Elementær diskret matematikk Academic contact during examination: Iris Marjan Smit a, Sverre Olaf Smalø b Phone: a 9285 0781, b 7359 1750
More informationHandout #Ch7 San Skulrattanakulchai Gustavus Adolphus College Dec 6, 2010. Chapter 7: Digraphs
MCS236: Graph Theory Handout #Ch7 San Skulrattanakulchai Gustavus Adolphus College Dec 6, 2010 Chapter 7: Digraphs Strong Digraphs Definitions. A digraph is an ordered pair (V, E), where V is the set
More information2.3 WINDOWTOVIEWPORT COORDINATE TRANSFORMATION
2.3 WINDOWTOVIEWPORT COORDINATE TRANSFORMATION A worldcoordinate area selected for display is called a window. An area on a display device to which a window is mapped is called a viewport. The window
More informationA Review And Evaluations Of Shortest Path Algorithms
A Review And Evaluations Of Shortest Path Algorithms Kairanbay Magzhan, Hajar Mat Jani Abstract: Nowadays, in computer networks, the routing is based on the shortest path problem. This will help in minimizing
More informationPlanar Graph and Trees
Dr. Nahid Sultana December 16, 2012 Tree Spanning Trees Minimum Spanning Trees Maps and Regions Eulers Formula Nonplanar graph Dual Maps and the Four Color Theorem Tree Spanning Trees Minimum Spanning
More informationCOT5405 Analysis of Algorithms Homework 3 Solutions
COT0 Analysis of Algorithms Homework 3 Solutions. Prove or give a counter example: (a) In the textbook, we have two routines for graph traversal  DFS(G) and BFS(G,s)  where G is a graph and s is any
More informationLoad Balancing and Termination Detection
Chapter 7 slides71 Load Balancing and Termination Detection slides72 Load balancing used to distribute computations fairly across processors in order to obtain the highest possible execution speed. Termination
More information1) The postfix expression for the infix expression A+B*(C+D)/F+D*E is ABCD+*F/DE*++
Answer the following 1) The postfix expression for the infix expression A+B*(C+D)/F+D*E is ABCD+*F/DE*++ 2) Which data structure is needed to convert infix notations to postfix notations? Stack 3) The
More informationChapter 2 Paths and Searching
Chapter 2 Paths and Searching Section 2.1 Distance Almost every day you face a problem: You must leave your home and go to school. If you are like me, you are usually a little late, so you want to take
More informationCMPS 102 Solutions to Homework 1
CMPS 0 Solutions to Homework Lindsay Brown, lbrown@soe.ucsc.edu September 9, 005 Problem.. p. 3 For inputs of size n insertion sort runs in 8n steps, while merge sort runs in 64n lg n steps. For which
More informationData Structures and Algorithms
Data Structures and Algorithms CS2452016S06 Binary Search Trees David Galles Department of Computer Science University of San Francisco 060: Ordered List ADT Operations: Insert an element in the list
More information10. Graph Matrices Incidence Matrix
10 Graph Matrices Since a graph is completely determined by specifying either its adjacency structure or its incidence structure, these specifications provide far more efficient ways of representing a
More informationClipping polygons the SutherlandHodgman algorithm
Clipping polygons would seem to be quite complex. Clipping polygons would seem to be quite complex. single Clipping polygons would seem to be quite complex. single Clipping polygons would seem to be quite
More informationSolutions to Homework 6
Solutions to Homework 6 Debasish Das EECS Department, Northwestern University ddas@northwestern.edu 1 Problem 5.24 We want to find light spanning trees with certain special properties. Given is one example
More informationChapter 6 Planarity. Section 6.1 Euler s Formula
Chapter 6 Planarity Section 6.1 Euler s Formula In Chapter 1 we introduced the puzzle of the three houses and the three utilities. The problem was to determine if we could connect each of the three utilities
More informationBSc (Hons) Business Information Systems, BSc (Hons) Computer Science with Network Security. & BSc. (Hons.) Software Engineering
BSc (Hons) Business Information Systems, BSc (Hons) Computer Science with Network Security & BSc. (Hons.) Software Engineering Cohort: BIS/05/FT BCNS/05/FT BSE/05/FT Examinations for 20052006 / Semester
More informationAbout the Tutorial. Audience. Prerequisites. Disclaimer & Copyright
About the Tutorial This tutorial offers a brief introduction to the fundamentals of graph theory. Written in a readerfriendly style, it covers the types of graphs, their properties, trees, graph traversability,
More informationCSL851: Algorithmic Graph Theory Semester I Lecture 4: August 5
CSL851: Algorithmic Graph Theory Semester I 201314 Lecture 4: August 5 Lecturer: Naveen Garg Scribes: Utkarsh Ohm Note: LaTeX template courtesy of UC Berkeley EECS dept. Disclaimer: These notes have not
More informationChapter 7 Load Balancing and Termination Detection
Chapter 7 Load Balancing and Termination Detection Load balancing used to distribute computations fairly across processors in order to obtain the highest possible execution speed. Termination detection
More informationLoad Balancing and Termination Detection
Chapter 7 Slide 1 Slide 2 Load Balancing and Termination Detection Load balancing used to distribute computations fairly across processors in order to obtain the highest possible execution speed. Termination
More informationComputer Algorithms. NPComplete Problems. CISC 4080 Yanjun Li
Computer Algorithms NPComplete Problems NPcompleteness The quest for efficient algorithms is about finding clever ways to bypass the process of exhaustive search, using clues from the input in order
More informationHomework MA 725 Spring, 2012 C. Huneke SELECTED ANSWERS
Homework MA 725 Spring, 2012 C. Huneke SELECTED ANSWERS 1.1.25 Prove that the Petersen graph has no cycle of length 7. Solution: There are 10 vertices in the Petersen graph G. Assume there is a cycle C
More informationA Functional Graph Library
A Functional Graph Library Based on Inductive Graphs and Functional Graph Algorithms by Martin Erwig Presentation by Christian Doczkal March 22 nd, 2006 Structure Motivation Inductive graph definition
More informationCompSci61B, Data Structures Final Exam
Your Name: CompSci61B, Data Structures Final Exam Your 8digit Student ID: Your CS61B Class Account Login: This is a final test for mastery of the material covered in our labs, lectures, and readings.
More informationM3R4: PROGRAMMING AND PROBLEM SOLVING THROUGH C LANGUAGE
M3R4: PROGRAMMING AND PROBLEM SOLVING THROUGH C LANGUAGE NOTE: IMPORTANT INSTRUCTIONS: 1. Question Paper in English and Hindi and Candidate can choose any one language. 2. In case of discrepancies in
More information4 Basics of Trees. Petr Hliněný, FI MU Brno 1 FI: MA010: Trees and Forests
4 Basics of Trees Trees, actually acyclic connected simple graphs, are among the simplest graph classes. Despite their simplicity, they still have rich structure and many useful application, such as in
More informationSociology and CS. Small World. Sociology Problems. Degree of Separation. Milgram s Experiment. How close are people connected? (Problem Understanding)
Sociology Problems Sociology and CS Problem 1 How close are people connected? Small World Philip Chan Problem 2 Connector How close are people connected? (Problem Understanding) Small World Are people
More informationWAN Wide Area Networks. Packet Switch Operation. Packet Switches. COMP476 Networked Computer Systems. WANs are made of store and forward switches.
Routing WAN Wide Area Networks WANs are made of store and forward switches. To there and back again COMP476 Networked Computer Systems A packet switch with two types of I/O connectors: one type is used
More informationPart Five: Problem Set I Key
Mat 114 Part Five: Problem Set I Key 1. Consider the following orderrequirement digraph, where all indicated weights are in hours. a) What is the critical path time? For this we need to backtrack. The
More informationDirected Graphs. Directed Graphs. Digraph Applications. Ecological Food Web. Digraph. Set of objects with oriented pairwise connections.
Directed Graphs Directed Graphs Digraph. Set of objects with oriented pairwise connections. Ex. Oneway street, hyperlink. Reference: Chapter 9, Algorithms in Java, rd Edition, Robert Sedgewick Robert
More informationMathematical Modelling Lecture 8 Networks
Lecture 8 Networks phil.hasnip@york.ac.uk Overview of Course Model construction dimensional analysis Experimental input fitting Finding a best answer optimisation Tools for constructing and manipulating
More informationChapter 6: Graph Theory
Chapter 6: Graph Theory Graph theory deals with routing and network problems and if it is possible to find a best route, whether that means the least expensive, least amount of time or the least distance.
More informationDivideandConquer. Three main steps : 1. divide; 2. conquer; 3. merge.
DivideandConquer Three main steps : 1. divide; 2. conquer; 3. merge. 1 Let I denote the (sub)problem instance and S be its solution. The divideandconquer strategy can be described as follows. Procedure
More informationAbstract Data Types in C
Abstract Data Types in C Abstract Data Types (ADTs) in C (1) C is not objectoriented, but we can still manage to inject some objectoriented principles into the design of C code. For example, a data structure
More informationBicolored Shortest Paths in Graphs with Applications to Network Overlay Design
Bicolored Shortest Paths in Graphs with Applications to Network Overlay Design Hongsik Choi and HyeongAh Choi Department of Electrical Engineering and Computer Science George Washington University Washington,
More informationPlanar Tree Transformation: Results and Counterexample
Planar Tree Transformation: Results and Counterexample Selim G Akl, Kamrul Islam, and Henk Meijer School of Computing, Queen s University Kingston, Ontario, Canada K7L 3N6 Abstract We consider the problem
More informationData Structures. Chapter 8
Chapter 8 Data Structures Computer has to process lots and lots of data. To systematically process those data efficiently, those data are organized as a whole, appropriate for the application, called a
More informationThe edge slide graph of the ndimensional cube
The edge slide graph of the ndimensional cube Howida AL Fran Institute of Fundamental Sciences Massey University, Manawatu 8th Australia New Zealand Mathematics Convention December 2014 Howida AL Fran
More informationReductions & NPcompleteness as part of Foundations of Computer Science undergraduate course
Reductions & NPcompleteness as part of Foundations of Computer Science undergraduate course Alex Angelopoulos, NTUA January 22, 2015 Outline Alex Angelopoulos (NTUA) FoCS: Reductions & NPcompleteness
More informationAn Introduction to APGL
An Introduction to APGL Charanpal Dhanjal February 2012 Abstract Another Python Graph Library (APGL) is a graph library written using pure Python, NumPy and SciPy. Users new to the library can gain an
More information5. A full binary tree with n leaves contains [A] n nodes. [B] log n 2 nodes. [C] 2n 1 nodes. [D] n 2 nodes.
1. The advantage of.. is that they solve the problem if sequential storage representation. But disadvantage in that is they are sequential lists. [A] Lists [B] Linked Lists [A] Trees [A] Queues 2. The
More information