输入一个字符串,反转得到新字符串

需求:输入一个多单词的字符串,反转得到新的字符串。

比如:输入"hello world" ,输出"world hello"

package main

import (
	"fmt"
	"strings"
)

func reverseWords(s string) string {
	// 使用strings.Fields分割字符串为单词切片
	words := strings.Fields(s)

	// 反转切片,循环交换元素的方式来实现反转
	for i, j := 0, len(words)-1; i < j; i, j = i+1, j-1 {
		words[i], words[j] = words[j], words[i]
	}
	//i=0 ,j =5
	//i=1 ,j =4
	//i=2 ,j =3
	// 使用strings.Join将反转后的单词切片合并为一个新的字符串
	return strings.Join(words, " ")
}

func main() {
	s := "lc test go hello world"
	reversed := reverseWords(s)
	fmt.Println(reversed)
}

  

posted @ 2024-07-18 00:40  李若盛开  阅读(18)  评论(0)    收藏  举报