###### Data structures & Algorithms

(5/5)

### Life Cycle Simulation Experiments Suppose that you want to simulate the life cycle of a Binary Search Tree

**INSTRUCTIONS TO CANDIDATES**
###### ANSWER ALL QUESTIONS

Life Cycle Simulation Experiments

Suppose that you want to simulate the life cycle of a Binary Search Tree as described on slides 45-48 of the Trees lecture slides (CIS 256 and CIS 279 Class Notes) and in section 4.3.5. (Average-Case Analysis) of the Textbook by Mark Allen Weiss.

Considering the problems that can be caused by random insert/remove pairs, here is a strategy that is not perfectly random, but close enough:

Initial Setup: Build a tree with N elements by inserting N elements chosen at random from the range 1 to M , where M is an integral multiple of N, i.e. M = K*N (where K is an integer independent of N).

Evolution of Binary Search Tree: Perform N2 pairs of insertions followed by deletions. Assume the existence of a routine, randomInteger(a, b), which returns a uniform random integer between a and b inclusive.

- Briefly explain how to generate a random integer between 1 and M that is not already in the tree (so a random insertion can be performed). In terms of N and K, what is the probability of finding a new element to insert.
*(Your answer should not exceed half a typed page.) *
- Explain how to generate a random integer between 1 and M that is already in the tree (so that a random deletion of that integer can be performed). In terms of N and K, what is the probability of finding a new element to delete.
*(Your answer should not exceed another half a typed page.)*

##### Attachments:

## Related Questions

##### . Introgramming & Unix Fall 2018, CRN 44882, Oakland University Homework Assignment 6 - Using Arrays and Functions in C

DescriptionIn this final assignment, the students will demonstrate their ability to apply two ma

##### . The standard path finding involves finding the (shortest) path from an origin to a destination, typically on a map. This is an

Path finding involves finding a path from A to B. Typically we want the path to have certain properties,such as being the shortest or to avoid going t

##### . Develop a program to emulate a purchase transaction at a retail store. This program will have two classes, a LineItem class and a Transaction class. The LineItem class will represent an individual

Develop a program to emulate a purchase transaction at a retail store. Thisprogram will have two classes, a LineItem class and a Transaction class. Th

##### . SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of Sea Ports. Here are the classes and their instance variables we wish to define:

1
Project 1
Introduction - the SeaPort Project series
For this set of projects for the course, we wish to simulate some of the aspects of a number of

##### . Project 2 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of Sea Ports. Here are the classes and their instance variables we wish to define:

1
Project 2
Introduction - the SeaPort Project series
For this set of projects for the course, we wish to simulate some of the aspects of a number of