1answer.
Ask question
Login Signup
Ask question
All categories
  • English
  • Mathematics
  • Social Studies
  • Business
  • History
  • Health
  • Geography
  • Biology
  • Physics
  • Chemistry
  • Computers and Technology
  • Arts
  • World Languages
  • Spanish
  • French
  • German
  • Advanced Placement (AP)
  • SAT
  • Medicine
  • Law
  • Engineering
sergey [27]
3 years ago
10

Consider a binary search tree where each tree node v has a field v.sum which stores the sum of all the keys in the subtree roote

d at v.
(a) Modify the Insert operation (given below) to insert an element so that all the .sum fields of the tree are correct after applying the Insert operation. (Assume that all the .sum fields were correct before the Insert operation.) Your modified algorithm should take the same time as the original Insert operation. Explain your modification and give pseudo-code for the modified algorithm.

function Insert(T,z)

y <-- LocateParent(T,z)

z.parent <-- y

if (y = NIL) then T.root <-- z ;

else if (z.key< y.key) then y.left <-- z

else y.right <-- z

(b) Argue for the correctness of your algorithm. Explain why all the .sum fields are correct after running your modified Insert operation.

(c) Analyze the running time of your modified algorithm in terms of the size n and the height h of the binary search tree.
Computers and Technology
1 answer:
AVprozaik [17]3 years ago
6 0

Answer:

Each time you insert a new node, call the function to adjust the sum.

This method has to be called each time we insert new node to the tree since the sum at all the

parent nodes from the newly inserted node changes when we insert the node.

// toSumTree method will convert the tree into sum tree.

int toSumTree(struct node *node)

{

if(node == NULL)

return 0;

// Store the old value

int old_val = node->data;

// Recursively call for left and right subtrees and store the sum as new value of this node

node->data = toSumTree(node->left) + toSumTree(node->right);

// Return the sum of values of nodes in left and right subtrees and

// old_value of this node

return node->data + old_val;

}

This has the complexity of O(n).

Explanation:

You might be interested in
Suppose I have two DFAs D1, D2 and I perform the product construction on them to get a DFA for the union of their languages. Wha
Musya8 [376]

Answer:

Explanation:

If L(D1) = L(D2), the D has every state being final

If L(D1) = L¯(D2), the D has every state being final

If L(D1) = ∅, then L(D) = L(D2).

If L(D1)=Σ, L(D) = L(D2)

8 0
3 years ago
Under which menu option of a word processing program does a star
12345 [234]

Answer:

<u><em>A callout is a type of text box that also includes a line for pointing to any location on the document. A callout appears under the SHAPES menu of the word processing program. The answer that completes this statement is the word "shapes". Hope this answers your question. </em></u>

<u><em></em></u>

Explanation:

8 0
4 years ago
A condition-controlled loop uses a while loop.<br><br> true<br><br> false
matrenka [14]

Answer:

true

Explanation:

a while loop is a condition-controlled loop. While loops continue no matter what under a certain condition, unless you insert the keyword <em>break.</em>

One example in python is this:

while x > y:

      <em>pass</em>

The keyword to break a while loop may vary depending on the coding language you are using.

<u>Tip</u> The pass keyword allows a no error contact between loop and the terminal. Pass in a nutshell is almost as if saying nothing at all, but just leaving the condition blank. We only use pass because it prevents errors instead of no value.

8 0
2 years ago
solve this simple question 1) Let S = {a, bb, bab, abaab} be a set of strings. Are abbabaabab and baabbbabbaabb in S*? Does any
Mariana [72]

Answer: a.

S = {aa ab ba bb}

This clearly shows that that every string that belongs to this language has an even length including 0 length.

This language can be depicted as following

S* = {∧ aa ab ba bb aaaa aaab aaba aabb bbaa . . .}

Regular Expression for this can be

RE = (aa+ab+ba+bb)*

So S* contains all the strings of a's and b's that have even length. This means all strings of even length.

Explanation:

b.

S* contains all possible strings of a's and b's that have length divisible by 3

This means some of the possible strings examples are:

aaa, bbb, aaabbb, aaaaaa, bbbbbb and so on.

Length divisible by 3 means the length of string such as aaa is 3 which is divisible by 3, also  aaaaaa has length 6 which is divisible by 3

This should be something like this:

(( a + b ) ^3)*

For example a^3 = aaa which is divisible by 3

Regular expression can be:

RE of S* = (aaa + bbb)*

For example string bbbbbbbbb has length 9 which is divisible by 3

So the language is

S* = { ∧ aaa bbb aaabbb aaaaaa aaaaaabbb...}

Explanation:

4 0
3 years ago
Given the following code: PreparedStatement ps = connection.prepareStatement("select firstName, mi, lastName from Student where
katen-ka-za [31]

Answer:

In this question, the code will be given a run-time error.

Explanation:

In java programming, the database code will give a run-time error because cursor in the resultSet that is the object of the resultSet class not point any rows in the table and we must use the resultSet.next() function. This function passes the cursor value to the first row in resultSet class object and this function helps to pass the value in the cursor for the next row in the resultSet class object.

5 0
3 years ago
Other questions:
  • Write a program that computes the monthly net pay of the employee for a steel factory. The input for this program is the hourly
    10·1 answer
  • Which trait depicts honesty?
    10·1 answer
  • Suppose that Alice wants to send Bob a 50 kilobyte message over a 1 Gbps link. The total time required to transmit the message (
    5·1 answer
  • Hackers who gain control over several computers can organize them into a client-server network known as a(n) __________ . This n
    7·1 answer
  • Effective presentations vary the color scheme on each slide.
    7·2 answers
  • Fair Use means a teacher can take the contents of a web activity page and repost it in your school's web site because it is for
    7·1 answer
  • During project management, who executes tasks and produces the deliverables as stated in the project plan and as directed by the
    9·1 answer
  • Microprocessor is what​
    14·1 answer
  • You’ve been hired to help a bank automate their deposit/withdrawal system! Your task is to write a Python program that interacts
    6·1 answer
  • Which of the following is not considered essential for an electronic device to be called a computer?
    15·1 answer
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!