题解 | #字符串排序#
字符串排序
https://www.nowcoder.com/practice/5af18ba2eb45443aa91a11e848aa6723
package main import ( "fmt" // "strconv" // "strings" ) func main() { var n int var val string var arr []string fmt.Scan(&n) for i := 0; i < n; i++ { fmt.Scan(&val) t := sortStr(arr, val) arr = t } // 输出结果 for _, v := range arr { if v == "" { continue } fmt.Println(v) } } // 将val添加到有序arr中 func sortStr(arr []string, val string) []string { for i := 0; i < len(arr); i++ { if val >= arr[i] { // 直接比较两个字符串 continue } tmp := make([]string, len(arr)-i+1) // copy之前必须提前开辟好空间 copy(tmp, arr[i:]) arr = append(arr[:i], val) arr = append(arr, tmp...) return arr } // val比arr所有元素都大 arr = append(arr, val) return arr }#golang#