package main
import (
"fmt"
)
// 获取输入内容,返回字符串切片
func getInput() []string {
var count int
var str string
fmt.Scan(&count)
var strSlice []string
for i := 0; i < count; i++ {
fmt.Scan(&str)
strSlice = append(strSlice, str)
}
return strSlice
}
// 比较两个字符串的大小。true:a>=b false:a<b
func comStr(a, b string) bool {
var minLen int
if len(a) < len(b) {
minLen = len(a)
} else {
minLen = len(b)
}
for i := 0; i < minLen; i++ {
if a[i] > b[i] {
return true
}
if a[i] < b[i] {
return false
}
}
if len(a) >= len(b) {
return true
} else {
return false
}
}
// 为字符串切片排序
func sortSlice(strSlice []string) {
for i := 0; i < len(strSlice); i++ {
for j := i + 1; j < len(strSlice); j++ {
if comStr(strSlice[i], strSlice[j]) {
strSlice[i], strSlice[j] = strSlice[j], strSlice[i]
}
}
}
for _, value := range strSlice {
fmt.Println(value)
}
}
func main() {
strSlice := getInput()
sortSlice(strSlice)
}