Answer: Citiations areto show where you got information from.
Explanation:
Answer:
Explanation:
The following code is written in Python. It is a recursive function that tests the first and last character of the word and keeps checking to see if each change would create the palindrome. Finally, printing out the minimum number needed to create the palindrome.
import sys
def numOfSwitches(word, start, end):
if (start > end):
return sys.maxsize
if (start == end):
return 0
if (start == end - 1):
if (word[start] == word[end]):
return 0
else:
return 1
if (word[start] == word[end]):
return numOfSwitches(word, start + 1, end - 1)
else:
return (min(numOfSwitches(word, start, end - 1),
numOfSwitches(word, start + 1, end)) + 1)
word = input("Enter a Word: ")
start = 0
end = len(word)-1
print("Number of switches required for palindrome: " + str(numOfSwitches(word, start, end)))
Answer:
The control unit of the central processing unit regulates and integrates the operations of the computer. It selects and retrieves instructions from the main memory in proper sequence and interprets them so as to activate the other functional elements of the system at the appropriate moment
Big-O notation is a way to describe a function that represents the n amount of times a program/function needs to be executed.
(I'm assuming that := is a typo and you mean just =, by the way)
In your case, you have two loops, nested within each other, and both loop to n (inclusive, meaning, that you loop for when i or j is equal to n), and both loops iterate by 1 each loop.
This means that both loops will therefore execute an n amount of times. Now, if the loops were NOT nested, our big-O would be O(2n), because 2 loops would run an n amount of times.
HOWEVER, since the j-loop is nested within i-loop, the j-loop executes every time the i-loop <span>ITERATES.
</span>
As previously mentioned, for every i-loop, there would be an n amount of executions. So if the i-loop is called an n amount of times by the j loop (which executes n times), the big-O notation would be O(n*n), or O(n^2).
(tl;dr) In basic, it is O(n^2) because the loops are nested, meaning that the i-loop would be called n times, and for each iteration, it would call the j-loop n times, resulting in n*n runs.
A way to verify this is to write and test program the above. I sometimes find it easier to wrap my head around concepts after testing them myself.