# Learn Data Structures by Building the Merge Sort Algorithm - Step 33

### Tell us what’s happening:

Hey, so i am struggling with the last part of this questions.
i tried print("Sorted array: " + str(numbers) ) and it didn’t work, I also tried print("Sorted array: ", str(numbers)) and it also failed, so i am confused what could be the problem

``````def merge_sort(array):
if len(array) <= 1:
return

middle_point = len(array) // 2
left_part = array[:middle_point]
right_part = array[middle_point:]

merge_sort(left_part)
merge_sort(right_part)

left_array_index = 0
right_array_index = 0
sorted_index = 0

while left_array_index < len(left_part) and right_array_index < len(right_part):
if left_part[left_array_index] < right_part[right_array_index]:
array[sorted_index] = left_part[left_array_index]
left_array_index += 1
else:
array[sorted_index] = right_part[right_array_index]
right_array_index += 1
sorted_index += 1

while left_array_index < len(left_part):
array[sorted_index] = left_part[left_array_index]
left_array_index += 1
sorted_index += 1

while right_array_index < len(right_part):
array[sorted_index] = right_part[right_array_index]
right_array_index += 1
sorted_index += 1

# User Editable Region

if __name__ == '__main__':
numbers = [4, 10, 6, 14, 2, 1, 8, 5]
print('Unsorted array: ')
print(numbers)
merge_sort(numbers)

# User Editable Region

``````

User Agent is: `Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36`

### Challenge Information:

Learn Data Structures by Building the Merge Sort Algorithm - Step 33

Did you check the spacing?

Yes i did still it didn’t work, i even copied the string which is supposed to be printed, i also tried using the f-string in my print function, and i also didn’t work

``````def merge_sort(array):
if len(array) <= 1:
return

middle_point = len(array) // 2
left_part = array[:middle_point]
right_part = array[middle_point:]

merge_sort(left_part)
merge_sort(right_part)

left_array_index = 0
right_array_index = 0
sorted_index = 0

while left_array_index < len(left_part) and right_array_index < len(right_part):
if left_part[left_array_index] < right_part[right_array_index]:
array[sorted_index] = left_part[left_array_index]
left_array_index += 1
else:
array[sorted_index] = right_part[right_array_index]
right_array_index += 1
sorted_index += 1

while left_array_index < len(left_part):
array[sorted_index] = left_part[left_array_index]
left_array_index += 1
sorted_index += 1

while right_array_index < len(right_part):
array[sorted_index] = right_part[right_array_index]
right_array_index += 1
sorted_index += 1

if __name__ == '__main__':
numbers = [4, 10, 6, 14, 2, 1, 8, 5]
print('Unsorted array: ')
print(numbers)
merge_sort(numbers)
print('Sorted array: ', str(numbers))
``````

I’m not sure about the indentation because the code is not properly formatted, but you need to concatenate `'Sorted array: '` and `str(numbers)`. You are not doing it here.

I’ve edited your code for readability. When you enter a code block into a forum post, please precede it with a separate line of three backticks and follow it with a separate line of three backticks to make it easier to read.

You can also use the “preformatted text” tool in the editor (`</>`) to add backticks around text.

See this post to find the backtick on your keyboard.
Note: Backticks (`) are not single quotes (').

`````` if __name__ == '__main__':
numbers = [4, 10, 6, 14, 2, 1, 8, 5]
print('Unsorted array: ')
print(numbers)
merge_sort(numbers)
print('Sorted array: ' + str(numbers)) # I tried this
print('Sorted array: ', str(numbers) # I also tried this
print(f'Sorted array: {str(numbers)}') # And this
Thank you by the way for taking your time  to assist a fellow like me, much appreciated

``````

IndentationError! There’s an extra space at the beginning. Fix that and then use concatenation ( `+` ) to build the string.

1 Like

yep that was it, thank you very much

This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.