Kotlin-Algorithm icon indicating copy to clipboard operation
Kotlin-Algorithm copied to clipboard

Fix mergeSort bug

Open Amir-yazdanmanesh opened this issue 2 years ago • 0 comments
trafficstars

mergesort is now mergeSort, to follow Kotlin naming conventions.

items is now of type List<T> instead of MutableList<T>, because the subList method is only available on List.

items.count() is now items.size.

The base case in mergeSort is now if (items.size <= 1) instead of if (items.isEmpty()), because isEmpty() won't work for a non-mutable list.

The temp variable in merge is now initialized to the first element of left or right, instead of being declared without a value.

The leftIndex and rightIndex variables are now used to keep track of the current index in left and right, respectively.

The addAll method is now called on merged, not on the list being added.

The var keyword is changed to val wherever possible, to avoid unnecessary mutability.

The main function is unchanged, but I removed the var keyword when declaring ordered, since it doesn't need to be mutable.

Amir-yazdanmanesh avatar Mar 15 '23 22:03 Amir-yazdanmanesh