subject

This code is for python Searching for Data
In this lab we'll compare the time it takes to search for an item in a list vs searching for it in a binary search tree.
Part 1: Populating and Searching a List
To get started create a function, populate, that takes as a parameter a positive integer n, populates a list of length n with random integers in the range of [0, n] and returns that list.
Next create a function that takes as a parameter a list and an integer and returns True if that integer is found in the list and False if it is not.
Finally, in your main script call your function for a value of n to get a list of length n and then go through that list and look for each element in that list within the list and print out that count. Needless to say if you did everything right you should print out n
Part 2: Populating and Searching a Binary Search Tree
Download the provided BST. py module. This module is a stripped down implementation of a Binary Search Tree and associated Node class.
The BST class has the following public methods:
Constructor - Creates an empty binary search tree.
append(value) - Creates a Node with the value value and inserts it into the BST.
isin(value) - Returns True if value is found in a Node of the BST and False otherwise.
Change your main script so that your populate function creates both a list and a Binary Search Tree with the same random n elements and returns them both. In addition, change your main script so that with in looks for all the values of the list within the list, that it also counts how many times those values exist in the BST and prints that number out as well.
Part 3: Timing
Now let's time how long it takes to look for all n values within both the list and the BST! To do this, first import the time module. The time module has a time() function that returns the system time. Get this value before checking the list for all the values and then again after you're done checking the list. Print out the difference in these times. Now do the same thing for searching the BST!
Part 4: Plot n vs. time
Finally onto the cool stuff! In the previous parts you were asked to just use some arbitrary value of n. Now let's do everything you did in Part 3 but for a range of values of n. In particular let's go from n=1 to n=10,000 in steps of 1000. Keep track of the times for each of these runs for searching both the list and the BST so that you can plot them!As a reminder, we can use the matplotlib library to help us plot. So first import matplotlib. pyplot as plt. If you cannot import this module, then you may need to install (pip) matplotlib. Then you can make use of the following methods:
plt. plot(xvals, yvals, label='text') - Adds a plot of xvals vs yvals to the current figure with a label saying 'text'. Doing this several times superimposes the plots.
plt. legend() - This will "enable" the labels to be shown as a legend.
plt. show() - This displays the figure.
Finally, plot n vs average list search time and n vs average BST search time.

ansver
Answers: 3

Another question on Computers and Technology

question
Computers and Technology, 23.06.2019 15:30
Hey so i was just trying out some game hacks so i took a paste from online and built it in my visual studio and then suddenly my computer was working or clicking on stuff on its own am i hacked?
Answers: 1
question
Computers and Technology, 24.06.2019 03:30
Auniform resource locator (url) is a formatted string of text that web browsers, email applications, and other software programs use to identify a particular resource on the internet. true false
Answers: 2
question
Computers and Technology, 24.06.2019 08:30
Formatting rows and columns is similar to cell formatting. in an openoffice calc spreadsheet, you can format data entered into rows and columns with the of the rows and columns options. you can insert rows and columns into, or delete rows and columns from, a spreadsheet. use the insert or delete rows and columns option on the insert tab. alternatively, select the row or column where you want new rows or columns to appear, right-click, and select insert only row or only column options. you can hide or show rows and columns in a spreadsheet. use the hide or show option on the format tab. for example, to hide a row, first select the row, then choose the insert tab, then select the row option, and then select hide. alternatively, you can select the row or columns, right-click, and select the hide or show option. you can adjust the height of rows and width of columns. select row and then select the height option on the format tab. similarly, select column, then select the width option on the format tab. alternatively, you can hold the mouse on the row and column divider, and drag the double arrow to the position. you can also use the autofit option on the table tab to resize rows and columns.
Answers: 1
question
Computers and Technology, 24.06.2019 21:50
The use of phrases, fragments, and punctuation can influence the mood of a passage; keeping this in mind, how would you describe the mood of the followingpassage? "fog on the essex marshes, fog on the kentish heights, fog creeping into the cabooses of collier-brigs; fog lying out on the yards, and hovering in the riggingof great ships; fog drooping on the gunwales of barges and small boats. fog in the eyes and throats of ancient greenwich pensioners, wheezing by thefiresides of their wards; fog in the stem and bowl of the afternoon pipe of the wrathful skipper; fog cruelly pinching the toes and fingers of his shivering little'prentice boy on deck." (5 points)
Answers: 2
You know the right answer?
This code is for python Searching for Data
In this lab we'll compare the time it takes to se...
Questions
question
Mathematics, 28.08.2019 08:30
question
Mathematics, 28.08.2019 08:30
question
Mathematics, 28.08.2019 08:30
question
Mathematics, 28.08.2019 08:30
question
Mathematics, 28.08.2019 08:30
question
Mathematics, 28.08.2019 08:30
Questions on the website: 13722367