# What are the time and space complexity of this algorithm? [closed]

What is the time and space complexity of this algorithm and can it be improved (how)? It generates random 4 digit even number and the adjacent 2 digits must be different.

def random_digits():
import random
num = ''
for i in range(0, 4):
curr = random.randint(0,9)
print('curr', curr)
if (i != (i+1)):
if (i == 3 and (curr % 2 != 0)):
curr = curr - 1
num += str(curr)

• I don't know python, but what is the meaning of if (i != (i+1))? It looks like you're wondering if 3!=4, which is always true. I don't see the 'adjacent 2 digits must be different' part anywhere. – oerkelens Jun 6 '17 at 19:12
• This question has been downvoted and closed for multiple reasons: (a) possibly broken code, (b) primarily seeking an explanation of code, (c) unclear what you are asking. – 200_success Jun 6 '17 at 21:38

• You don't need to import all of random just for randint: Use from random import randint
• You don't need parentheses in if (i != (i+1)) and if (i == 3 and (curr % 2 != 0))
• Instead of curr = curr - 1, use curr -= 1
• If range() is called with a single parameter n, the first value will automatically be 0, so there's no need to explicitly call range(0, n).