CS 344
##### CS 344 - Rutgers Study Resources
• 2 Pages
###### BFS

School: Rutgers

CE177 Schlag Fall '04 Handout # 2 Breadth First Search The input is a simple graph. This algorithm traverses each component of the graph, numbering vertices as they are encountered (bfs[u]) and saving for each vertex u the neighbor (if any) from wh

• 3 Pages
###### String

School: Rutgers

String matching consists of finding one or more generally, all of the occurrences of a pattern in a text. Finding a certain pattern in a text is a problem arises in text-editing programs and web "surfing". Here we study various fundamental text processing

• 1 Page
###### Homework 6

School: Rutgers

Course: Design And Analysis Of Algorithms

Fall 2012 CS 344: #6 Reductions Farach-Colton Due by 5:00pm, Nov. 1. Suppose there is a C+ library on your machine which has the following function: IS (G, k ): Input: Graph G, and a number k . Output: Yes, if G has an Independent Set of size at least k ;

• 1 Page
###### Homework 7

School: Rutgers

Course: Design And Analysis Of Algorithms

Fall 2012 CS 344: #7 Graphs and Reductions Farach-Colton Due by 5:00pm, Dec. 4. 1. A graph is said to be bipartite if its vertex set can be partitioned into two sets A, B such that every edge in G has one endpoint in A and other endpoint in B . A Hamilton

• 1 Page
###### Homework 8

School: Rutgers

Course: Design And Analysis Of Algorithms

Fall 2012 CS 344: #8 More Reductions Farach-Colton Due by 4:00pm, Dec. 11. Consider the following decision problems: V C (G, k ): Input: Graph G, and an integer k . Output: Yes, if G has a Vertex Cover of size k ; No, otherwise. A vertex cover is a set of

• 2 Pages
###### Midterm Exam

School: Rutgers

Course: Design And Analysis Of Algorithms

CS344. Algorithms and Data Structures MidTerm Exam I (Thursday October 18, 2012. 5.00 PM to 6.20 PM, Total Points: 100) You may consult your single cheat sheet. Any theorem or algorithm presented in class in class can be used. All other theorems or algo

• 1 Page
###### Practice Exam 1

School: Rutgers

Course: Design And Analysis Of Algorithms

Fall 1994 Farach CS 344: (Practice) Exam #1 Books and notebooks may be consulted. Any theorem proven in class or algorithm presented in class can be used. Theorems or algorithms that were mentioned but not presented can only be used if you prove them. 1.

• 1 Page
###### Practice Questions

School: Rutgers

Course: Design And Analysis Of Algorithms

Fall 2012 CS 344: Practice Questions Farach-Colton Due by 5:00pm, on . 1. Suppose I take an array A[1, . . . , n] of integers and create a new array B [1, . . . , n+ 1] as follows: First, B [1, . . . , n] = A[1, . . . , n]. Now, I pick some i without tell

• 1 Page
###### Homework 1

School: Rutgers

Course: Design And Analysis Of Algorithms

Fall 2012 CS 344: #1 Math Fundamentals Farach-Colton Due by 5:00pm, Due: Sept. 13. 1. Prove, using the denitions, that loga x = logb x. loga b Prove that log x x = . y log y 2. Prove by induction on k : (Remember these formulas, they may be used later) (a

• 2 Pages
###### Homework 2

School: Rutgers

Course: Design And Analysis Of Algorithms

Fall 2012 CS 344: #1 Math Fundamentals Farach-Colton Due by 5:00pm, Due: Sept. 20. 1. Prove that log(n!) (n log n). (15 points) 2. Let f (n) = 2n , g (n) = 3n . Is f (n) in O(g (n)? Is g (n) in O(f (n)? Prove your answer. (10 points) 3. Let f (n) = n2 , g

• 1 Page
###### Homework 3

School: Rutgers

Course: Design And Analysis Of Algorithms

Fall 2012 CS 344: #3 Sorting Farach-Colton Due by 5:00pm, Sept. 27. 1. The merge algorithm presented in class was not in place. Assume you are given an array A[1], ., A[n] where A[1], ., A[k ] is one sorted list and A[k + 1], ., A[n] is another sorted lis

• 1 Page
###### Homework 4

School: Rutgers

Course: Design And Analysis Of Algorithms

Fall 2012 CS 344: #4 Trees and Whatnot Farach-Colton Due by 5:00pm, Oct. 4. 1. Prove that a forest consisting of k trees with a total of n nodes has n k edges. (20 points) 2. Let G = (V, E, W ) be a weighted graph such that no two dierent edges in E have

• 5 Pages
###### Sorting

School: Rutgers

The objective of the sorting algorithm is to rearrange the records so that their keys are ordered according to some well-defined ordering rule. Problem: Given an array of n real number A[1. n]. Objective: Sort the elements of A in ascending order of their

• 7 Pages
###### Sets

School: Rutgers

A set is a collection of different things (distinguishable objects or distinct objects) represented as a unit. The objects in a set are called its elements or members. If an object x is a member of a set S, we write x S. On the the hand, if x is not a mem

• 13 Pages
###### Graph Algorythms

School: Rutgers

Elementary Graph Algorithms CSE 680 Suggested Reading: Appendix B4, Chapter 22 1 Graphs G(V, E) - V : vertex set; E: edge set. Directed graphs, undirected graphs, weighted graphs. An edge is incident on, incident from, or incident to a vertex.

• 1 Page
###### Approximate

School: Rutgers

An approximate algorithm is a way of dealing with NP-completeness for optimization problem. This technique does not guarantee the best solution. The goal of an approximation algorithm is to come as close as possible to the optimum value in a reasonable am

• 10 Pages
###### Binary Search Tree

School: Rutgers

Binary Search tree is a binary tree in which each internal node x stores an element such that the element stored in the left subtree of x are less than or equal to x and elements stored in the right subtree of x are greater than or equal to x. This is cal

• 3 Pages
###### Divide And Conquer

School: Rutgers

Divide-and-conquer is a top-down technique for designing algorithms that consists of dividing the problem into smaller subproblems hoping that the solutions of the subproblems are easier to find and then composing the partial solutions into the solution o

• 5 Pages
###### Dynamic Programming

School: Rutgers

Dynamic programming is a fancy name for using divide-and-conquer technique with a table. As compared to divide-and-conquer, dynamic programming is more powerful and subtle design technique. Let me repeat , it is not a specific algorithm, but it is a meta-

• 7 Pages
###### Dynamic Table

School: Rutgers

If the allocated space for the table is not enough, we must copy the table into larger size table. Similarly, if large number of members erased from the table, it is good idea to reallocate the table with a smaller size. Using amortized analysis we shall

• 5 Pages
###### Graph Algorithms

School: Rutgers

Graph Theory is an area of mathematics that deals with following types of problems Connection problems Scheduling problems Transportation problems Network analysis Games and Puzzles. The Graph Theory has important applications in Critical path analysis, S

• 3 Pages
###### Greedy Algorithms

School: Rutgers

Greedy algorithms are simple and straightforward. They are shortsighted in their approach in the sense that they take decisions on the basis of information at hand without worrying about the effect these decisions may have in the future. They are easy to

• 8 Pages
###### Hash Tables

School: Rutgers

Direct-address table If the keys are drawn from the reasoning small universe U = cfw_0, 1, . . . , m-1 of keys, a solution is to use a Table T[0, . m-1], indexed by keys. To represent the dynamic set, we use an array, or direct-address table, denoted by T

• 12 Pages
###### Inequalities

School: Rutgers

Inequalities The term inequality is applied to any statement involving one of the symbols <, >, ,. Example of inequalities are: i. ii. iii. iv. x1 x + y + 2z > 16 p2 + q2 1/2 a2 + ab > 1 Fundamental Properties of Inequalities 1. If a b and c is any real n

• 9 Pages
###### Lec2

School: Rutgers

A vector, u, means a list (or n-tuple) of numbers: u = (u1, u2, . . . , un) where ui are called the components of u. If all the ui are zero i.e., ui = 0, then u is called the zero vector. Given vectors u and v are equal i.e., u = v, if they have the same

• 1 Page
###### Homework 5

School: Rutgers

Course: Design And Analysis Of Algorithms

Fall 2012 CS 344: #5 More comparison stu Farach-Colton Due by 5:00pm, Oct. 11. 1. The mode of an array is the most frequent element of the array. Give an algorithm to nd the mode of an array. Analyze its complexity. As always, the faster the algorithm, th

Back to course listings