问题描述
中文、数字、英文字母
示例
输入:"he師l發lo,世。+-*界,6" 输出:"6,界*-+。世,ol發l師eh"
Golang 实现
package main import "fmt" func reverseString(s string) string { // 将字符串转换为 rune 类型的切片,并对该切片翻转 res := reverse([]int32(s)) // 再把 rune 类型的切片转为 string return string(res) } func reverse(s []int32) []rune { // 左右指针,对切片依次翻转 for i, j := 0, len(s)-1; i < j; i, j = i+1, j-1 { s[i], s[j] = s[j], s[i] } return s } func main() { s := "he師l發lo,世。+-*界,6" res := reverseString(s) fmt.Println(res) }
runeint32byte
rune
[]int32
在 go 的源码中:指针
type byte = uint8 type rune = int32
李培冠博客
欢迎访问个人我的网站:code
李培冠博客:lpgit.com字符串