CS200 Midterm 2 Fall 2007

Size: px
Start display at page:

Download "CS200 Midterm 2 Fall 2007"

Transcription

1 CS200 Midterm 2 Fall 2007 Name Topic Possible Received Generics, programming 10 Trees 35 Priority Queues, Heaps 30 Graphs 25 TOTAL 100

2 1. Generics/Programming [10 points] a. [4 points] Why is it important to create a tostring method in a new data structure implementation? b. [6 points] Spot the bugs in the following code. Underline each problem and suggest a fix for it. Make clear which problem is being fixed by which modification. ArrayList<Integer> somenums = new ArrayList(); somenums.add(0); ArrayList<Object> morenums = somenums; Integer first = morenums.get(0);. 2. Trees [35 points] a. [7 points] Circle T or F for True or False for the following statements. T F A preorder traversal of a binary search tree produces a lexicographic ordering of the vertices. T F A full (Rosen s definition) 3-ary tree with 49 vertices has 32 leaves. T F A full (either definition) binary tree with 64 leaves has 63 internal vertices. T F A tree is a graph. T F A preorder traversal of a heap produces a lexicographic ordering of the vertices. T F A binary tree with 256 vertices has a maximum height of 8. T F A balanced tree is a complete tree.

3 b. [15 points] Programming. Below is the code from Carrano and Prichard for BinarySearchTree. The instance variables and methods available to you are shown. You can use only these methods and methods built-in to Java. (You are not being given access to the protected methods in the class.) Fill in code for the insert method. If you need more space, use the back of the last page as well. public class BinarySearchTree<T extends KeyedItem<KT>, KT extends Comparable<? super KT>> extends BinaryTreeBasis<T> { // from BinaryTreeBasis, inherits isempty(), makeempty(), getrootitem(), // the use of the constructors and // instance variable protected TreeNode<T> root; // TreeNode has: TreeNode(T newitem, TreeNode<T> left, TreeNode<T> right) // getitem(),setitem(t newitem), getleft(),setleft(treenode<t> left), // getright(),setright(treenode<t> right) public BinarySearchTree(T rootitem) { public void setrootitem(t newitem) { public T retrieve(kt searchkey) { public void delete(kt searchkey) throws TreeException { public void insert(t newitem) {

4 c. [8 points] Draw the binary search tree that results i. from adding, in this order, the letters: M A I B D C T E F R ii. then draw the tree that results after removing the failing grades: D and F d. [5 points] Short Answer. Traversals are defined over ordered rooted trees. Why is it necessary to have ordered rooted trees? 3. Priority Queues/Heaps [30 points] a. [6 points] Short Answer. Carrano and Prichard describe a Priority Queue as a special case of the ADT Table. What is a Table? How can a Priority Queue be a Table?

5 b. [8 points] Circle T or F for True or False for the following statements. T F A binary search tree implementation of the Table ADT has non-linear Big-O for retrieval in average case. T F A Table cannot be implemented using a linked list. T F The array [5, 18, 101, 30, 22, 202, 101] is a heap with root as minimum value. T F When a value is removed from the heap [10, 101, 12, 231, 102, 72, 142], the array becomes [12, 101, 231, 102, 72, 142]. T F A semiheap is a complete binary tree. T F The rightmost leaf contains the first item to be removed from a heap implementation of a priority queue. T F Heapsort is O(n * log n) in the worst case. T F Heapsort can be made in place by iteratively constructing larger semi-heaps until the array becomes a heap. c. [10 points] Find and fix any bugs in the following code for heaprebuild, assume it is a maxheap. protected void heaprebuild(int root) { int child = 2 * root; if ( child < items.size() ) { int rightchild = child + 1; if (compareitems(items.get(root), items.get(child)) > 0) { T temp = items.get(root); items.set(root, items.get(child)); items.set(child, temp); heaprebuild(root);

6 d. [6 points] Construct a heap (represented as an array) with the inorder traversal of {13, 10, 18, 0, 21, 5, Graphs [25 points] a. [6 points] For which values of n (numbers of vertices) are the following special graphs bipartite? i. Complete ( K n ) ii. Cycle ( C n ) iii. Wheel (W n ) b. [4 points] Circle T or F for True or False if the following graphs can exist: T F A simple graph with 15 vertices each of degree 5 T F A multigraph with 10 vertices, 20 edges and 1 isolated vertex T F A simple directed graph with outdegree {1, 1, 1, 2 and indegree {1, 2, 2, 1 T F A directed multigraph with outdegree {1, 1, 1, 2 and indegree {1, 2, 2, 1 c. [6 points] Label each graph below with one of the following types: simple graph, multigraph, pseudograph, or none of these a b c

7 d. [9 points] For the following graph, f 5 a 3 b 6 4 c 7 e d i. show how it would be represented as an adjacency matrix. ii. show the depth first traversal starting from vertex e, assuming that 1) whenever a choice is offered, the alphabetically lower vertex is chosen and 2) the implementation is recursive so that the program stack is used when backtracking.

CS200 Final Exam Fall 2007

CS200 Final Exam Fall 2007 CS200 Final Exam Fall 2007 Name Topic Possible Received Programming 53 Complexity, Recurrence 18 Divide & Conquer 16 Priority Queues, Heaps 18 Graphs 38 Hash Tables 12 Misc 45 TOTAL 200 1. Programming

More information

Chapter 11.!!!!Trees! 2011 Pearson Addison-Wesley. All rights reserved 11 A-1

Chapter 11.!!!!Trees! 2011 Pearson Addison-Wesley. All rights reserved 11 A-1 Chapter 11!!!!Trees! 2011 Pearson Addison-Wesley. All rights reserved 11 A-1 2015-12-01 09:30:53 1/54 Chapter-11.pdf (#13) Terminology Definition of a general tree! A general tree T is a set of one or

More information

Chapter 11.!!!!Trees! 2011 Pearson Addison-Wesley. All rights reserved 11 A-1

Chapter 11.!!!!Trees! 2011 Pearson Addison-Wesley. All rights reserved 11 A-1 Chapter 11!!!!Trees! 2011 Pearson Addison-Wesley. All rights reserved 11 A-1 2015-03-25 21:47:41 1/53 Chapter-11.pdf (#4) Terminology Definition of a general tree! A general tree T is a set of one or more

More information

Terminology. The ADT Binary Tree. The ADT Binary Search Tree

Terminology. The ADT Binary Tree. The ADT Binary Search Tree Terminology The ADT Binary Tree The ADT Binary Search Tree 1 Terminology 3 A general tree A general tree T is a set of one or more nodes such that T is partitioned into disjoint subsets: o A single node

More information

CS200: Tables and Priority Queues

CS200: Tables and Priority Queues Value Oriented Data Structures CS200: Tables and Priority Queues Value-oriented operations are very common: q Find John Smith s facebook q Retrieve the student transcript of Ruth Mui q Register Jack Smith

More information

COSC 2007 Data Structures II Final Exam. Part 1: multiple choice (1 mark each, total 30 marks, circle the correct answer)

COSC 2007 Data Structures II Final Exam. Part 1: multiple choice (1 mark each, total 30 marks, circle the correct answer) COSC 2007 Data Structures II Final Exam Thursday, April 13 th, 2006 This is a closed book and closed notes exam. There are total 3 parts. Please answer the questions in the provided space and use back

More information

Trees 11/15/16. Chapter 11. Terminology. Terminology. Terminology. Terminology. Terminology

Trees 11/15/16. Chapter 11. Terminology. Terminology. Terminology. Terminology. Terminology Chapter 11 Trees Definition of a general tree A general tree T is a set of one or more nodes such that T is partitioned into disjoint subsets: A single node r, the root Sets that are general trees, called

More information

CS200: Trees. Rosen Ch & 11.3 Prichard Ch. 11. CS200 - Trees

CS200: Trees. Rosen Ch & 11.3 Prichard Ch. 11. CS200 - Trees CS200: Trees Rosen Ch. 11.1 & 11.3 Prichard Ch. 11 1 Trees A A node has only one parent! Except the root: zero parents B C D E F Tree grows top to bottom! 2 Tree Terminology Node interior node path root

More information

4/3/13. Outline. Part 7. Tables and Priority Queues. Value Oriented Data Structures. Example: Table of Student Points. Table ADT.

4/3/13. Outline. Part 7. Tables and Priority Queues. Value Oriented Data Structures. Example: Table of Student Points. Table ADT. Outline Part 7. Tables and Priority Queues Tables Priority Queues Heaps Heapsort CS 0 Algorithms and Data Structures Value Oriented Data Structures Value-oriented operations are very common: Find John

More information

Outline. Part 7. Tables and Priority Queues. Example: Table of Student Points. Value Oriented Data Structures. Table ADT. Search Keys 4/2/12

Outline. Part 7. Tables and Priority Queues. Example: Table of Student Points. Value Oriented Data Structures. Table ADT. Search Keys 4/2/12 Outline Part 7. Tables and Priority Queues Tables Priority Queues Heaps Heapsort CS 0 Algorithms and Data Structures Value Oriented Data Structures Value-oriented operations are very common: Find John

More information

The ADT priority queue Orders its items by a priority value The first item removed is the one having the highest priority value

The ADT priority queue Orders its items by a priority value The first item removed is the one having the highest priority value The ADT priority queue Orders its items by a priority value The first item removed is the one having the highest priority value 1 Possible implementations Sorted linear implementations o Appropriate if

More information

Tree Terminology. root. Edge. interior node. parent. path. subtree. child. leaf

Tree Terminology. root. Edge. interior node. parent. path. subtree. child. leaf Tree Terminology Binary Trees CS00: Trees interior node Node path root parent Edge subtree Degree? Depth/Level? A binary tree is a set T of nodes such that either T is empty, or T is partitioned into three

More information

CS200: Balanced Search Trees

CS200: Balanced Search Trees Value Oriented Data Structures CS200: Balanced Search Trees Walls & Mirrors Chapters 12,13 Homework 4 extension Next week: Programming quiz during recit Midterm 2 April 8 th (in class) New partners and

More information

ADT Priority Queue. Heaps. A Heap Implementation of the ADT Priority Queue. Heapsort

ADT Priority Queue. Heaps. A Heap Implementation of the ADT Priority Queue. Heapsort ADT Priority Queue Heaps A Heap Implementation of the ADT Priority Queue Heapsort 1 ADT Priority Queue 3 The ADT priority queue Orders its items by a priority value The first item removed is the one having

More information

PROGRAMMING II ABSTRACT DATA TYPES Unassessed Coursework 4: Binary Search Trees and Heaps

PROGRAMMING II ABSTRACT DATA TYPES Unassessed Coursework 4: Binary Search Trees and Heaps PROGRAMMING II ABSTRACT DATA TYPES Unassessed Coursework 4: Binary Search Trees and Heaps The aims of this coursework is to practice: using Binary Search Trees (BST) by writing examples of higher level

More information

CSCI-401 Examlet #5. Name: Class: Date: True/False Indicate whether the sentence or statement is true or false.

CSCI-401 Examlet #5. Name: Class: Date: True/False Indicate whether the sentence or statement is true or false. Name: Class: Date: CSCI-401 Examlet #5 True/False Indicate whether the sentence or statement is true or false. 1. The root node of the standard binary tree can be drawn anywhere in the tree diagram. 2.

More information

CS302 Data Structures using C++

CS302 Data Structures using C++ CS302 Data Structures using C++ Study Guide for the Final Exam Fall 2018 Revision 1.1 This document serves to help you prepare towards the final exam for the Fall 2018 semester. 1. What topics are to be

More information

Tables, Priority Queues, Heaps

Tables, Priority Queues, Heaps Tables, Priority Queues, Heaps Table ADT purpose, implementations Priority Queue ADT variation on Table ADT Heaps purpose, implementation heapsort EECS 268 Programming II 1 Table ADT A table in generic

More information

Tables and Priority Queues

Tables and Priority Queues Chapter 12 Tables and Priority Queues 2011 Pearson Addison-Wesley. All rights reserved 12 A-1 The ADT Table The ADT table, or dictionary Uses a search key to identify its items Its items are records that

More information

BBM 201 Data structures

BBM 201 Data structures BBM 201 Data structures Lecture 11: Trees 2018-2019 Fall Content Terminology The Binary Tree The Binary Search Tree Data Structures and Problem Solving with C++: Walls and Mirrors, Carrano and Henry, 2013

More information

Tables and Priority Queues!

Tables and Priority Queues! Chapter 12! Tables and Priority Queues! 2011 Pearson Addison-Wesley. All rights reserved 12 A-1 2015-11-30 21:52:31 1/49 Chapter-12.pdf (#14) The ADT Table The ADT table, or dictionary! Uses a search key

More information

CS165: Priority Queues, Heaps

CS165: Priority Queues, Heaps CS1: Priority Queues, Heaps Prichard Ch. 12 Priority Queues Characteristics Items are associated with a Comparable value: priority Provide access to one element at a time - the one with the highest priority

More information

CS302 - Data Structures using C++

CS302 - Data Structures using C++ CS302 - Data Structures using C++ Topic: Heaps Kostas Alexis The ADT Heap A heap is a complete binary tree that is either: Empty or Whose root contains a value >= each of its children and has heaps as

More information

Draw the resulting binary search tree. Be sure to show intermediate steps for partial credit (in case your final tree is incorrect).

Draw the resulting binary search tree. Be sure to show intermediate steps for partial credit (in case your final tree is incorrect). Problem 1. Binary Search Trees (36 points) a) (12 points) Assume that the following numbers are inserted into an (initially empty) binary search tree in the order shown below (from left to right): 42 36

More information

CS200 Spring 2004 Midterm Exam II April 14, Value Points a. 5 3b. 16 3c. 8 3d Total 100

CS200 Spring 2004 Midterm Exam II April 14, Value Points a. 5 3b. 16 3c. 8 3d Total 100 CS200 Spring 2004 Midterm Exam II April 14, 2004 Value Points 1. 12 2. 26 3a. 5 3b. 16 3c. 8 3d. 8 4. 25 Total 100 Name StudentID# 1. [12 pts] Short Answer from recitations: a) [3 pts] What is the first

More information

Programming II (CS300)

Programming II (CS300) 1 Programming II (CS300) Chapter 12: Heaps and Priority Queues MOUNA KACEM mouna@cs.wisc.edu Fall 2018 Heaps and Priority Queues 2 Priority Queues Heaps Priority Queue 3 QueueADT Objects are added and

More information

Data Structures Question Bank Multiple Choice

Data Structures Question Bank Multiple Choice Section 1. Fundamentals: Complexity, Algorthm Analysis 1. An algorithm solves A single problem or function Multiple problems or functions Has a single programming language implementation 2. A solution

More information

Programming II (CS300)

Programming II (CS300) 1 Programming II (CS300) Chapter 11: Binary Search Trees MOUNA KACEM mouna@cs.wisc.edu Fall 2018 General Overview of Data Structures 2 Introduction to trees 3 Tree: Important non-linear data structure

More information

University of Waterloo Department of Electrical and Computer Engineering ECE 250 Algorithms and Data Structures

University of Waterloo Department of Electrical and Computer Engineering ECE 250 Algorithms and Data Structures University of Waterloo Department of Electrical and Computer Engineering ECE 250 Algorithms and Data Structures Final Examination (17 pages) Instructor: Douglas Harder April 14, 2004 9:00-12:00 Name (last,

More information

March 20/2003 Jayakanth Srinivasan,

March 20/2003 Jayakanth Srinivasan, Definition : A simple graph G = (V, E) consists of V, a nonempty set of vertices, and E, a set of unordered pairs of distinct elements of V called edges. Definition : In a multigraph G = (V, E) two or

More information

Outline. Part 6. Trees (1) Data RepresentaCon. Terminology 3/2/12. Represent hierarchical relationships B C D. Parent node

Outline. Part 6. Trees (1) Data RepresentaCon. Terminology 3/2/12. Represent hierarchical relationships B C D. Parent node Outline Part 6. Trees (1) CS 200 lgorithms and Data Structures Terminology Binary Tree Basic operations Traversals of a Binary Tree Representations of a Binary Tree Implementations Binary Search Tree lgorithms

More information

Priority Queue. How to implement a Priority Queue? queue. priority queue

Priority Queue. How to implement a Priority Queue? queue. priority queue Priority Queue cs cs cs0 cs cs cs queue cs cs cs cs0 cs cs cs cs cs0 cs cs cs Reading LDC Ch 8 priority queue cs0 cs cs cs cs cs How to implement a Priority Queue? Keep them sorted! (Haven t we implemented

More information

CS302 - Data Structures using C++

CS302 - Data Structures using C++ CS302 - Data Structures using C++ Topic: Trees Kostas Alexis Trees List, stacks, and queues are linear in their organization of data. Items are one after another In this section, we organize data in a

More information

MIDTERM Preparation. CSS 343: Data Structures Algorithms, and Discrete Math II

MIDTERM Preparation. CSS 343: Data Structures Algorithms, and Discrete Math II MIDTERM Preparation CSS 343: Data Structures Algorithms, and Discrete Math II The midterm is closed-book, closed-notes exam, except for a single sheet of letter-sized, double-sided hand-written or typed

More information

Heaps & Priority Queues. (Walls & Mirrors - Remainder of Chapter 11)

Heaps & Priority Queues. (Walls & Mirrors - Remainder of Chapter 11) Heaps & Priority Queues (Walls & Mirrors - Remainder of Chapter 11) 1 Overview Array-Based Representation of a Complete Binary Tree Heaps The ADT Priority Queue Heap Implementation of the ADT Priority

More information

Complete Binary Trees

Complete Binary Trees Trees part 2. Full Binary Trees A binary tree is full if all the internal nodes (nodes other than leaves) has two children and if all the leaves have the same depth A A full binary tree of height h has

More information

MULTIMEDIA COLLEGE JALAN GURNEY KIRI KUALA LUMPUR

MULTIMEDIA COLLEGE JALAN GURNEY KIRI KUALA LUMPUR STUDENT IDENTIFICATION NO MULTIMEDIA COLLEGE JALAN GURNEY KIRI 54100 KUALA LUMPUR FIFTH SEMESTER FINAL EXAMINATION, 2014/2015 SESSION PSD2023 ALGORITHM & DATA STRUCTURE DSEW-E-F-2/13 25 MAY 2015 9.00 AM

More information

tree nonlinear Examples

tree nonlinear Examples The Tree ADT Objectives Define trees as data structures Define the terms associated with trees Discuss tree traversal algorithms Discuss a binary tree implementation Examine a binary tree example 10-2

More information

" Which data Structure to extend to create a heap? " Two binary tree extensions are needed in a heap. n it is a binary tree (a complete one)

 Which data Structure to extend to create a heap?  Two binary tree extensions are needed in a heap. n it is a binary tree (a complete one) /7/ Queue vs Priority Queue Priority Queue Implementations queue 0 0 Keep them sorted! (Have we implemented it already?) Appropriate if the number of items is small Sorted Array-based items 0... items

More information

Topic 14. The BinaryTree ADT

Topic 14. The BinaryTree ADT Topic 14 The BinaryTree ADT Objectives Define trees as data structures Define the terms associated with trees Discuss tree traversal algorithms Discuss a binary tree implementation Examine a binary tree

More information

! Tree: set of nodes and directed edges. ! Parent: source node of directed edge. ! Child: terminal node of directed edge

! Tree: set of nodes and directed edges. ! Parent: source node of directed edge. ! Child: terminal node of directed edge Trees & Heaps Week 12 Gaddis: 20 Weiss: 21.1-3 CS 5301 Fall 2018 Jill Seaman!1 Tree: non-recursive definition! Tree: set of nodes and directed edges - root: one node is distinguished as the root - Every

More information

CS302 - Data Structures using C++

CS302 - Data Structures using C++ CS302 - Data Structures using C++ Topic: Implementation Kostas Alexis s Definition: A (BST) is a binary tree where each node has a Comparable key (and an associated value) and satisfies the restriction

More information

CS210 (161) with Dr. Basit Qureshi Final Exam Weight 40%

CS210 (161) with Dr. Basit Qureshi Final Exam Weight 40% CS210 (161) with Dr. Basit Qureshi Final Exam Weight 40% Name ID Directions: There are 9 questions in this exam. To earn a possible full score, you must solve all questions. Time allowed: 180 minutes Closed

More information

Binary Search Trees Treesort

Binary Search Trees Treesort Treesort CS 311 Data Structures and Algorithms Lecture Slides Friday, November 13, 2009 Glenn G. Chappell Department of Computer Science University of Alaska Fairbanks CHAPPELLG@member.ams.org 2005 2009

More information

CSE 373 Spring 2010: Midterm #1 (closed book, closed notes, NO calculators allowed)

CSE 373 Spring 2010: Midterm #1 (closed book, closed notes, NO calculators allowed) Name: Email address: CSE 373 Spring 2010: Midterm #1 (closed book, closed notes, NO calculators allowed) Instructions: Read the directions for each question carefully before answering. We may give partial

More information

R10 SET - 1. Code No: R II B. Tech I Semester, Supplementary Examinations, May

R10 SET - 1. Code No: R II B. Tech I Semester, Supplementary Examinations, May Code No: R21051 R10 SET - 1 II B. Tech I Semester, Supplementary Examinations, May - 2012 DATA STRUCTURES (Com. to CSE, IT, ECC ) Time: 3 hours Max Marks: 75 Answer any FIVE Questions All Questions carry

More information

If you took your exam home last time, I will still regrade it if you want.

If you took your exam home last time, I will still regrade it if you want. Some Comments about HW2: 1. You should have used a generic node in your structure one that expected an Object, and not some other type. 2. Main is still too long for some people 3. braces in wrong place,

More information

CS 112 Data Structures. Midterm Exam 1

CS 112 Data Structures. Midterm Exam 1 ID number CS 112 Data Structures Midterm Exam 1 Fall, 2000 Circle your instructor/ta combination: Ikro Yoon / Rajesh Bhowmick Lou Steinberg,/ Haiyan Cao Lou Steinberg,/ Steven Sanbeg Srikrishna Divakaran

More information

References and Homework ABSTRACT DATA TYPES; LISTS & TREES. Abstract Data Type (ADT) 9/24/14. ADT example: Set (bunch of different values)

References and Homework ABSTRACT DATA TYPES; LISTS & TREES. Abstract Data Type (ADT) 9/24/14. ADT example: Set (bunch of different values) 9// References and Homework Text: Chapters, and ABSTRACT DATA TYPES; LISTS & TREES Homework: Learn these List methods, from http://docs.oracle.com/javase/7/docs/api/java/util/list.html add, addall, contains,

More information

Lecture Topics. Object Structures. Hierarchical Organization. Tree Concepts. Hierarchical Organization. Hierarchical Organization

Lecture Topics. Object Structures. Hierarchical Organization. Tree Concepts. Hierarchical Organization. Hierarchical Organization Object Structures Trees CISH 4020 Tom Blough blought@rh.edu www.rh.edu/~blought 860.618.4148 Lecture Topics Tree Concepts Traversals of a Tree Java Interfaces for Trees Examples of Binary Trees Examples

More information

CMPT 225. Binary Search Trees

CMPT 225. Binary Search Trees CMPT 225 Binary Search Trees Trees A set of nodes with a single starting point called the root Each node is connected by an edge to some other node A tree is a connected graph There is a path to every

More information

Binary Search Trees. BinaryTree<E> Class (cont.) Section /27/2017

Binary Search Trees. BinaryTree<E> Class (cont.) Section /27/2017 Binary Search Trees Section.4 BinaryTree Class (cont.) public class BinaryTree { // Data members/fields...just the root is needed - Node root; // Constructor(s) + BinaryTree() + BinaryTree(Node

More information

Prelim 2. CS 2110, November 19, 2015, 7:30 PM Total. Sorting Invariants Max Score Grader

Prelim 2. CS 2110, November 19, 2015, 7:30 PM Total. Sorting Invariants Max Score Grader Prelim 2 CS 2110, November 19, 2015, 7:30 PM 1 2 3 4 5 6 Total Question True Short Complexity Searching Trees Graphs False Answer Sorting Invariants Max 20 15 13 14 17 21 100 Score Grader The exam is closed

More information

CS 112 Final May 8, 2008 (Lightly edited for 2012 Practice) Name: BU ID: Instructions

CS 112 Final May 8, 2008 (Lightly edited for 2012 Practice) Name: BU ID: Instructions CS 112 Final May 8, 2008 (Lightly edited for 2012 Practice) Name: BU ID: This exam is CLOSED book and notes. Instructions The exam consists of six questions on 11 pages. Please answer all questions on

More information

Topic 18 Binary Trees "A tree may grow a thousand feet tall, but its leaves will return to its roots." -Chinese Proverb

Topic 18 Binary Trees A tree may grow a thousand feet tall, but its leaves will return to its roots. -Chinese Proverb Topic 18 "A tree may grow a thousand feet tall, but its leaves will return to its roots." -Chinese Proverb Definitions A tree is an abstract data type one entry point, the root Each node is either a leaf

More information

Abstract Data Structures IB Computer Science. Content developed by Dartford Grammar School Computer Science Department

Abstract Data Structures IB Computer Science. Content developed by Dartford Grammar School Computer Science Department Abstract Data Structures IB Computer Science Content developed by Dartford Grammar School Computer Science Department HL Topics 1-7, D1-4 1: System design 2: Computer Organisation 3: Networks 4: Computational

More information

Selection, Bubble, Insertion, Merge, Heap, Quick Bucket, Radix

Selection, Bubble, Insertion, Merge, Heap, Quick Bucket, Radix Spring 2010 Review Topics Big O Notation Heaps Sorting Selection, Bubble, Insertion, Merge, Heap, Quick Bucket, Radix Hashtables Tree Balancing: AVL trees and DSW algorithm Graphs: Basic terminology and

More information

A Binary Search Tree Implementation

A Binary Search Tree Implementation A Binary Search Tree Implementation Chapter 25 Getting Started Contents An Interface for the Binary Search Tree Duplicate Entries Beginning the Class Definition Searching and Retrieving Traversing Adding

More information

COMP : Trees. COMP20012 Trees 219

COMP : Trees. COMP20012 Trees 219 COMP20012 3: Trees COMP20012 Trees 219 Trees Seen lots of examples. Parse Trees Decision Trees Search Trees Family Trees Hierarchical Structures Management Directories COMP20012 Trees 220 Trees have natural

More information

4. Trees. 4.1 Preliminaries. 4.2 Binary trees. 4.3 Binary search trees. 4.4 AVL trees. 4.5 Splay trees. 4.6 B-trees. 4. Trees

4. Trees. 4.1 Preliminaries. 4.2 Binary trees. 4.3 Binary search trees. 4.4 AVL trees. 4.5 Splay trees. 4.6 B-trees. 4. Trees 4. Trees 4.1 Preliminaries 4.2 Binary trees 4.3 Binary search trees 4.4 AVL trees 4.5 Splay trees 4.6 B-trees Malek Mouhoub, CS340 Fall 2002 1 4.1 Preliminaries A Root B C D E F G Height=3 Leaves H I J

More information

3. Priority Queues. ADT Stack : LIFO. ADT Queue : FIFO. ADT Priority Queue : pick the element with the lowest (or highest) priority.

3. Priority Queues. ADT Stack : LIFO. ADT Queue : FIFO. ADT Priority Queue : pick the element with the lowest (or highest) priority. 3. Priority Queues 3. Priority Queues ADT Stack : LIFO. ADT Queue : FIFO. ADT Priority Queue : pick the element with the lowest (or highest) priority. Malek Mouhoub, CS340 Winter 2007 1 3. Priority Queues

More information

Review: Trees Binary Search Trees Sets in Java Collections API CS1102S: Data Structures and Algorithms 05 A: Trees II

Review: Trees Binary Search Trees Sets in Java Collections API CS1102S: Data Structures and Algorithms 05 A: Trees II 05 A: Trees II CS1102S: Data Structures and Algorithms Martin Henz February 10, 2010 Generated on Wednesday 10 th February, 2010, 10:54 CS1102S: Data Structures and Algorithms 05 A: Trees II 1 1 Review:

More information

Definitions A A tree is an abstract t data type. Topic 17. "A tree may grow a. its leaves will return to its roots." Properties of Trees

Definitions A A tree is an abstract t data type. Topic 17. A tree may grow a. its leaves will return to its roots. Properties of Trees Topic 17 Introduction ti to Trees "A tree may grow a thousand feet tall, but its leaves will return to its roots." -Chinese Proverb Definitions A A tree is an abstract t data t d internal type nodes one

More information

First Semester - Question Bank Department of Computer Science Advanced Data Structures and Algorithms...

First Semester - Question Bank Department of Computer Science Advanced Data Structures and Algorithms... First Semester - Question Bank Department of Computer Science Advanced Data Structures and Algorithms.... Q1) What are some of the applications for the tree data structure? Q2) There are 8, 15, 13, and

More information

Binary Trees, Binary Search Trees

Binary Trees, Binary Search Trees Binary Trees, Binary Search Trees Trees Linear access time of linked lists is prohibitive Does there exist any simple data structure for which the running time of most operations (search, insert, delete)

More information

Tree: non-recursive definition. Trees, Binary Search Trees, and Heaps. Tree: recursive definition. Tree: example.

Tree: non-recursive definition. Trees, Binary Search Trees, and Heaps. Tree: recursive definition. Tree: example. Trees, Binary Search Trees, and Heaps CS 5301 Fall 2013 Jill Seaman Tree: non-recursive definition Tree: set of nodes and directed edges - root: one node is distinguished as the root - Every node (except

More information

CS 251, LE 2 Fall MIDTERM 2 Tuesday, November 1, 2016 Version 00 - KEY

CS 251, LE 2 Fall MIDTERM 2 Tuesday, November 1, 2016 Version 00 - KEY CS 251, LE 2 Fall 2016 MIDTERM 2 Tuesday, November 1, 2016 Version 00 - KEY W1.) (i) Show one possible valid 2-3 tree containing the nine elements: 1 3 4 5 6 8 9 10 12. (ii) Draw the final binary search

More information

! Tree: set of nodes and directed edges. ! Parent: source node of directed edge. ! Child: terminal node of directed edge

! Tree: set of nodes and directed edges. ! Parent: source node of directed edge. ! Child: terminal node of directed edge Trees (& Heaps) Week 12 Gaddis: 20 Weiss: 21.1-3 CS 5301 Spring 2015 Jill Seaman 1 Tree: non-recursive definition! Tree: set of nodes and directed edges - root: one node is distinguished as the root -

More information

Prelim 2 Solution. CS 2110, November 19, 2015, 7:30 PM Total. Sorting Invariants Max Score Grader

Prelim 2 Solution. CS 2110, November 19, 2015, 7:30 PM Total. Sorting Invariants Max Score Grader Prelim 2 CS 2110, November 19, 2015, 7:30 PM 1 2 3 4 5 6 Total Question True Short Complexity Searching Trees Graphs False Answer Sorting Invariants Max 20 15 13 14 17 21 100 Score Grader The exam is closed

More information

TREES. Tree Overview 9/28/16. Prelim 1 tonight! Important Announcements. Tree terminology. Binary trees were in A1!

TREES. Tree Overview 9/28/16. Prelim 1 tonight! Important Announcements. Tree terminology. Binary trees were in A1! //16 Prelim 1 tonight! :3 prelim is very crowded. You HAVE to follow these directions: 1. Students taking the normal :3 prelim (not the quiet room) and whose last names begin with A through Da MUST go

More information

CS200: Graphs. Prichard Ch. 14 Rosen Ch. 10. CS200 - Graphs 1

CS200: Graphs. Prichard Ch. 14 Rosen Ch. 10. CS200 - Graphs 1 CS200: Graphs Prichard Ch. 14 Rosen Ch. 10 CS200 - Graphs 1 Graphs A collection of nodes and edges What can this represent? n A computer network n Abstraction of a map n Social network CS200 - Graphs 2

More information

A6-R3: DATA STRUCTURE THROUGH C LANGUAGE

A6-R3: DATA STRUCTURE THROUGH C LANGUAGE A6-R3: DATA STRUCTURE THROUGH C LANGUAGE NOTE: 1. There are TWO PARTS in this Module/Paper. PART ONE contains FOUR questions and PART TWO contains FIVE questions. 2. PART ONE is to be answered in the TEAR-OFF

More information

Prelim 2. CS 2110, November 20, 2014, 7:30 PM Extra Total Question True/False Short Answer

Prelim 2. CS 2110, November 20, 2014, 7:30 PM Extra Total Question True/False Short Answer Prelim 2 CS 2110, November 20, 2014, 7:30 PM 1 2 3 4 5 Extra Total Question True/False Short Answer Complexity Induction Trees Graphs Extra Credit Max 20 10 15 25 30 5 100 Score Grader The exam is closed

More information

APJ ABDUL KALAM TECHNOLOGICAL UNIVERSITY THIRD SEMESTER B.TECH DEGREE EXAMINATION, JULY 2017 CS205: DATA STRUCTURES (CS, IT)

APJ ABDUL KALAM TECHNOLOGICAL UNIVERSITY THIRD SEMESTER B.TECH DEGREE EXAMINATION, JULY 2017 CS205: DATA STRUCTURES (CS, IT) D B3D042 Pages: 2 Reg. No. Name: APJ ABDUL KALAM TECHNOLOGICAL UNIVERSITY THIRD SEMESTER B.TECH DEGREE EXAMINATION, JULY 2017 Max. Marks: 100 CS205: DATA STRUCTURES (CS, IT) PART A Answer all questions.

More information

Chapter 9. Priority Queue

Chapter 9. Priority Queue Chapter 9 Priority Queues, Heaps, Graphs Spring 2015 1 Priority Queue Priority Queue An ADT in which only the item with the highest priority can be accessed 2Spring 2015 Priority Depends on the Application

More information

Algorithms and Data Structures

Algorithms and Data Structures Algorithms and Data Structures Dr. Malek Mouhoub Department of Computer Science University of Regina Fall 2002 Malek Mouhoub, CS3620 Fall 2002 1 6. Priority Queues 6. Priority Queues ffl ADT Stack : LIFO.

More information

CSE 373 Autumn 2010: Midterm #1 (closed book, closed notes, NO calculators allowed)

CSE 373 Autumn 2010: Midterm #1 (closed book, closed notes, NO calculators allowed) Name: Email address: CSE 373 Autumn 2010: Midterm #1 (closed book, closed notes, NO calculators allowed) Instructions: Read the directions for each question carefully before answering. We may give partial

More information

Heaps. 2/13/2006 Heaps 1

Heaps. 2/13/2006 Heaps 1 Heaps /13/00 Heaps 1 Outline and Reading What is a heap ( 8.3.1) Height of a heap ( 8.3.) Insertion ( 8.3.3) Removal ( 8.3.3) Heap-sort ( 8.3.) Arraylist-based implementation ( 8.3.) Bottom-up construction

More information

CS 206 Introduction to Computer Science II

CS 206 Introduction to Computer Science II CS 206 Introduction to Computer Science II 07 / 15 / 2016 Instructor: Michael Eckmann Today s Topics Questions? Comments? Binary trees implementation Binary search trees Michael Eckmann - Skidmore College

More information

INFO1x05 Tutorial 09

INFO1x05 Tutorial 09 INFO1x05 Tutorial 09 (2,3) Trees, (2,4) Trees and Hash Tables Exercise 1: (INFO1105 and INFO1905) Is the search tree shown below a (2,4) tree? Why or why not? 22 5 10 25 3 4 6 8 14 23 24 27 11 13 17 Figure

More information

Data Structures Brett Bernstein

Data Structures Brett Bernstein Data Structures Brett Bernstein Final Review 1. Consider a binary tree of height k. (a) What is the maximum number of nodes? (b) What is the maximum number of leaves? (c) What is the minimum number of

More information

CS302 - Data Structures using C++

CS302 - Data Structures using C++ CS302 - Data Structures using C++ Topic: Tree Implementations Kostas Alexis Nodes in a Binary Tree Representing tree nodes Must contain both data and pointers to node s children Each node will be an object

More information

Data Structures. Trees. By Dr. Mohammad Ali H. Eljinini. M.A. Eljinini, PhD

Data Structures. Trees. By Dr. Mohammad Ali H. Eljinini. M.A. Eljinini, PhD Data Structures Trees By Dr. Mohammad Ali H. Eljinini Trees Are collections of items arranged in a tree like data structure (none linear). Items are stored inside units called nodes. However: We can use

More information

1) What is the primary purpose of template functions? 2) Suppose bag is a template class, what is the syntax for declaring a bag b of integers?

1) What is the primary purpose of template functions? 2) Suppose bag is a template class, what is the syntax for declaring a bag b of integers? Review for Final (Chapter 6 13, 15) 6. Template functions & classes 1) What is the primary purpose of template functions? A. To allow a single function to be used with varying types of arguments B. To

More information

Chapter 20: Binary Trees

Chapter 20: Binary Trees Chapter 20: Binary Trees 20.1 Definition and Application of Binary Trees Definition and Application of Binary Trees Binary tree: a nonlinear linked list in which each node may point to 0, 1, or two other

More information

AP Computer Science 4325

AP Computer Science 4325 4325 Instructional Unit Algorithm Design Techniques -divide-and-conquer The students will be -Decide whether an algorithm -classroom discussion -backtracking able to classify uses divide-and-conquer, -worksheets

More information

Data Structure and Algorithm, Spring 2013 Midterm Examination 120 points Time: 2:20pm-5:20pm (180 minutes), Tuesday, April 16, 2013

Data Structure and Algorithm, Spring 2013 Midterm Examination 120 points Time: 2:20pm-5:20pm (180 minutes), Tuesday, April 16, 2013 Data Structure and Algorithm, Spring 2013 Midterm Examination 120 points Time: 2:20pm-5:20pm (180 minutes), Tuesday, April 16, 2013 Problem 1. In each of the following question, please specify if the statement

More information

CS 445: Data Structures Final Examination: Study Guide

CS 445: Data Structures Final Examination: Study Guide CS 445: Data Structures Final Examination: Study Guide Java prerequisites Classes, objects, and references Access modifiers Arguments and parameters Garbage collection Self-test questions: Appendix C Designing

More information

Priority Queues and Heaps. Heaps of fun, for everyone!

Priority Queues and Heaps. Heaps of fun, for everyone! Priority Queues and Heaps Heaps of fun, for everyone! Learning Goals After this unit, you should be able to... Provide examples of appropriate applications for priority queues and heaps Manipulate data

More information

EECS 281 Homework 3 KEY Fall 2004

EECS 281 Homework 3 KEY Fall 2004 EECS 281 Homework 3 KEY Fall 2004 Assigned: Due: 26OC04 18NO04, 6pm, EECS 281 box in room 2420 EECS Homework Goals Develop knowledge of Trees and Tree algorithms; Develop knowledge of Binary Trees and

More information

R10 SET - 1. Code No: R II B. Tech I Semester, Supplementary Examinations, May

R10 SET - 1. Code No: R II B. Tech I Semester, Supplementary Examinations, May www.jwjobs.net R10 SET - 1 II B. Tech I Semester, Supplementary Examinations, May - 2012 (Com. to CSE, IT, ECC ) Time: 3 hours Max Marks: 75 *******-****** 1. a) Which of the given options provides the

More information

Points off Total off Net Score. CS 314 Final Exam Spring 2017

Points off Total off Net Score. CS 314 Final Exam Spring 2017 Points off 1 2 3 4 5 6 Total off Net Score CS 314 Final Exam Spring 2017 Your Name Your UTEID Instructions: 1. There are 6 questions on this test. 100 points available. Scores will be scaled to 300 points.

More information

Largest Online Community of VU Students

Largest Online Community of VU Students WWW.VUPages.com http://forum.vupages.com WWW.VUTUBE.EDU.PK Largest Online Community of VU Students MIDTERM EXAMINATION SEMESTER FALL 2003 CS301-DATA STRUCTURE Total Marks:86 Duration: 60min Instructions

More information

TREES Lecture 12 CS2110 Fall 2016

TREES Lecture 12 CS2110 Fall 2016 TREES Lecture 12 CS2110 Fall 2016 Prelim 1 tonight! 2 5:30 prelim is very crowded. You HAVE to follow these directions: 1. Students taking the normal 5:30 prelim (not the quiet room) and whose last names

More information

Computer Science E-22 Practice Final Exam

Computer Science E-22 Practice Final Exam name Computer Science E-22 This exam consists of three parts. Part I has 10 multiple-choice questions that you must complete. Part II consists of 4 multi-part problems, of which you must complete 3, and

More information

TREES Lecture 10 CS2110 Spring2014

TREES Lecture 10 CS2110 Spring2014 TREES Lecture 10 CS2110 Spring2014 Readings and Homework 2 Textbook, Chapter 23, 24 Homework: A thought problem (draw pictures!) Suppose you use trees to represent student schedules. For each student there

More information

Stacks, Queues, and Priority Queues. Inf 2B: Heaps and Priority Queues. The PriorityQueue ADT

Stacks, Queues, and Priority Queues. Inf 2B: Heaps and Priority Queues. The PriorityQueue ADT Stacks, Queues, and Priority Queues Inf 2B: Heaps and Priority Queues Lecture 6 of ADS thread Kyriakos Kalorkoti School of Informatics University of Edinburgh Stacks, queues, and priority queues are all

More information

Topics for CSCI 151 Final Exam Wednesday, May 10

Topics for CSCI 151 Final Exam Wednesday, May 10 Topics for CSCI 151 Final Exam Wednesday, May 10 Java and Programming Techniques Types Inheritance Generics Abstract classes and interfaces Exceptions Recursion Writing recursive methods Dynamic Programming

More information

CMSC 341 Lecture 10 Binary Search Trees

CMSC 341 Lecture 10 Binary Search Trees CMSC 341 Lecture 10 Binary Search Trees John Park Based on slides from previous iterations of this course Review: Tree Traversals 2 Traversal Preorder, Inorder, Postorder H X M A K B E N Y L G W UMBC CMSC

More information

CS 216 Exam 1 Fall SOLUTION

CS 216 Exam 1 Fall SOLUTION CS 216 Exam 1 Fall 2004 - SOLUTION Name: Lab Section: Email Address: Student ID # This exam is closed note, closed book. You will have an hour and fifty minutes total to complete the exam. You may NOT

More information