Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- MergeSort(a)
- {
- len := 1
- max := a.MaxIndex()
- loop
- {
- i := 0
- while i < max
- { ; merge
- l := i + 1
- r := l + len
- i += len << 1
- If (i > max)
- i := max
- while l < r && r <= i
- {
- if a[r] < a[l]
- a.Insert(l,a.Remove(r++))
- l++
- }
- }
- len <<= 1
- }
- until len >= max
- return a
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement