@@ -8,29 +8,28 @@ import (
88func reorderLogFiles (logs []string ) []string {
99 size := len (logs )
1010
11- letters := make ([][] string , 0 , size )
11+ letters := make ([]string , 0 , size )
1212 digits := make ([]string , 0 , size )
1313
1414 for _ , log := range logs {
15- ls := strings .SplitN (log , " " , 2 )
16- b := ls [1 ][0 ]
17- if '0' <= b && b <= '9' {
15+ if isDigit (log ) {
1816 digits = append (digits , log )
1917 } else {
20- letters = append (letters , ls )
18+ letters = append (letters , log )
2119 }
2220 }
2321
2422 sort .Slice (letters , func (i int , j int ) bool {
25- return letters [i ][1 ] < letters [j ][1 ]
23+ li , lj := letters [i ], letters [j ]
24+ li = li [strings .Index (li , " " ):]
25+ lj = lj [strings .Index (lj , " " ):]
26+ return strings .Compare (li , lj ) < 0
2627 })
2728
28- res := make ([]string , 0 , size )
29- for _ , ls := range letters {
30- res = append (res , strings .Join (ls , " " ))
31- }
32-
33- res = append (res , digits ... )
29+ return append (letters , digits ... )
30+ }
3431
35- return res
32+ func isDigit (log string ) bool {
33+ b := log [strings .Index (log , " " )+ 1 ]
34+ return '0' <= b && b <= '9'
3635}
0 commit comments