Insertion Sort
Insertion Sort is another simple sort algorithm that works with sorted and unsorted parts of an array. Values from unsorted part picked and placed to correct position in sorted part.
Example1
Example 2
[4 | 3
2 10 12 1 4 6] -> [3
4 | 2 10 12 1 4 6]
[3 4 | 2
10 12 1 4 6] -> [2
3 4 | 10 12 1 4 6]
[2 3 4 | 10
12 1 4 6]-> [2 3 4 10
| 12 1 4 6]
[2 3 4 10 | 12
1 4 6] -> [2 3 4 10 12
| 1 4 6]
[2 3 4 10 12 | 1
4 6] -> [1
2 3 4 10 12 | 4 6]
[1 2 3 4 10 12 | 4
6] -> [1 2 3 4 4
10 12 | 6]
[1 2 3 4 4 10 12 | 6
] -> [1 2 3 4 4 6
10 12]
Time complexity is O(N^2), because each next element of an unsorted part iterates through elements of the sorted part. There are two nested loops in the algorithm.
Space complexity: O(1).
123456789101112131415def insertionSort(arr): # Iterate unsorted subarrays for i in range(1, len(arr)): key = arr[i] # Element to move j = i-1 # Iterate sorted part and replace elements one position right while j>=0 and key < arr[j]: arr[j+1] = arr[j] j-=1 # Put key element on its position arr[j+1]= key return arr
Swipe to start coding
Use the insertionSort()
function to sort an array. You can either use the existing function or implement it yourself. Output the sorted array.
Oplossing
Bedankt voor je feedback!
single
Vraag AI
Vraag AI
Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.
Awesome!
Completion rate improved to 7.69
Insertion Sort
Veeg om het menu te tonen
Insertion Sort is another simple sort algorithm that works with sorted and unsorted parts of an array. Values from unsorted part picked and placed to correct position in sorted part.
Example1
Example 2
[4 | 3
2 10 12 1 4 6] -> [3
4 | 2 10 12 1 4 6]
[3 4 | 2
10 12 1 4 6] -> [2
3 4 | 10 12 1 4 6]
[2 3 4 | 10
12 1 4 6]-> [2 3 4 10
| 12 1 4 6]
[2 3 4 10 | 12
1 4 6] -> [2 3 4 10 12
| 1 4 6]
[2 3 4 10 12 | 1
4 6] -> [1
2 3 4 10 12 | 4 6]
[1 2 3 4 10 12 | 4
6] -> [1 2 3 4 4
10 12 | 6]
[1 2 3 4 4 10 12 | 6
] -> [1 2 3 4 4 6
10 12]
Time complexity is O(N^2), because each next element of an unsorted part iterates through elements of the sorted part. There are two nested loops in the algorithm.
Space complexity: O(1).
123456789101112131415def insertionSort(arr): # Iterate unsorted subarrays for i in range(1, len(arr)): key = arr[i] # Element to move j = i-1 # Iterate sorted part and replace elements one position right while j>=0 and key < arr[j]: arr[j+1] = arr[j] j-=1 # Put key element on its position arr[j+1]= key return arr
Swipe to start coding
Use the insertionSort()
function to sort an array. You can either use the existing function or implement it yourself. Output the sorted array.
Oplossing
Bedankt voor je feedback!
Awesome!
Completion rate improved to 7.69single