Skip to content

AscByIndex() must run (n-1) times before [][]string is properly sorted #3

@astockwell

Description

@astockwell

Please see the example below. This also affects CiAscByIndex(), and likely others as well.

Not sure if this is related to #2 as well..?

package main

import (
    "fmt"

    "github.com/patrickmn/sortutil"
)

func main() {
    ss := [][]string{
        {"aaa", "ddd", "ccc", "bbb"},
        {"www", "zzz", "yyy", "xxx"},
        {"lll", "ooo", "nnn", "mmm"},
        {"qqq", "ttt", "sss", "rrr"},
        {"ggg", "jjj", "iii", "hhh"},
        {"ttt", "www", "vvv", "uuu"},
    }
    fmt.Println(ss)
    // [[aaa ddd ccc bbb] [www zzz yyy xxx] [lll ooo nnn mmm] [qqq ttt sss rrr] [ggg jjj iii hhh] [ttt www vvv uuu]]

    sortutil.AscByIndex(ss, 0)
    fmt.Println(ss)
    // [[aaa ddd ccc bbb] [lll ooo nnn mmm] [www zzz yyy xxx] [ggg jjj iii hhh] [qqq ttt sss rrr] [ttt www vvv uuu]]

    sortutil.AscByIndex(ss, 0)
    fmt.Println(ss)
    // [[aaa ddd ccc bbb] [lll ooo nnn mmm] [ggg jjj iii hhh] [www zzz yyy xxx] [qqq ttt sss rrr] [ttt www vvv uuu]]

    sortutil.AscByIndex(ss, 0)
    fmt.Println(ss)
    // [[aaa ddd ccc bbb] [ggg jjj iii hhh] [lll ooo nnn mmm] [qqq ttt sss rrr] [www zzz yyy xxx] [ttt www vvv uuu]]

    sortutil.AscByIndex(ss, 0)
    fmt.Println(ss)
    // [[aaa ddd ccc bbb] [ggg jjj iii hhh] [lll ooo nnn mmm] [qqq ttt sss rrr] [ttt www vvv uuu] [www zzz yyy xxx]]
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions