sort

Generated by tinox doc

Three classic sorting algorithms over List<Int64>: quickSort, mergeSort, insertionSort — pick whichever fits your data size/stability needs, all return a new sorted list.

Sorting algorithms

import tinox.core.sort;

class Main
{
    fnc main() -> Int32
    {
        let data: List<Int64> = [5, 3, 8, 1, 9, 2];

        let quick: List<Int64> = Sort::quickSort(data);
        println("quickSort: " + quick.len().toString() + " items");

        let merged: List<Int64> = Sort::mergeSort(data);
        println("mergeSort: " + merged.len().toString() + " items");

        let inserted: List<Int64> = Sort::insertionSort(data);
        println("insertionSort: " + inserted.len().toString() + " items");

        var i: Int64 = 0;
        while i < quick.len()
        {
            println(quick[i].toString());
            i = i + 1;
        }

        return 0;
    }
}

class Sort

Methods

fn quickSort(arr: List<Int64>) → List<Int64>
fn quickSortHelper(arr: List<Int64>, low: Int64, high: Int64) → List<Int64>
fn partition(arr: List<Int64>, low: Int64, high: Int64) → Int64
fn mergeSort(arr: List<Int64>) → List<Int64>
fn mergeSortHelper(arr: List<Int64>) → List<Int64>
fn mergeInto(result: List<Int64>, left: List<Int64>, right: List<Int64>) → List<Int64>
fn insertionSort(arr: List<Int64>) → List<Int64>