logo Hurry, Grab up to 30% discount on the entire course
Order Now logo

Ask This Question To Be Solved By Our ExpertsGet A+ Grade Solution Guaranteed

expert
Theodore BiggerstaffBusiness
(5/5)

919 Answers

Hire Me
expert
Eusebio JayCriminology
(5/5)

667 Answers

Hire Me
expert
Martin BlumbergFinance
(5/5)

785 Answers

Hire Me
expert
Patriciaaa GloverrrScience
(5/5)

776 Answers

Hire Me
Data structures & Algorithms

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.

 

  1. 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.) 
  2. 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.)

 

Related Questions

. The fundamental operations of create, read, update, and delete (CRUD) in either Python or Java

CS 340 Milestone One Guidelines and Rubric  Overview: For this assignment, you will implement the fundamental operations of create, read, update,

. 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

Retail Transaction Programming Project  Project Requirements:  Develop a program to emulate a purchase transaction at a retail store. This

. The following program contains five errors. Identify the errors and fix them

7COM1028   Secure Systems Programming   Referral Coursework: Secure

. Accepts the following from a user: Item Name Item Quantity Item Price Allows the user to create a file to store the sales receipt contents

Create a GUI program that:Accepts the following from a user:Item NameItem QuantityItem PriceAllows the user to create a file to store the sales receip

. The final project will encompass developing a web service using a software stack and implementing an industry-standard interface. Regardless of whether you choose to pursue application development goals as a pure developer or as a software engineer

CS 340 Final Project Guidelines and Rubric  Overview The final project will encompass developing a web service using a software stack and impleme