[面试常问总结] 2. 翻转字符串 Golang实现

 

 

 

示例1:
输入:["h","e","l","l","o"]
输出:["o","l","l","e","h"]
示例2:
输入:["H","a","n","n","a","h"]
输出:["h","a","n","n","a","H"]

思路:

1、遍历数组的一半长度,将第i位的值和第 len(s)-1-i位置的值进行交换。

go语言实现代码

复制代码
//反转字符串
//例如:ReverseString("hello") 返回olleh ;ReverseString("helo") 返回oleh
func ReverseString(str string)string{
    strByte:=[]byte(str)
    num:=len(strByte)
    if num==0{
        return ""
    }
    //双指针
    //找到中间位置
    mid:=num/2
    //最后一个元素
    j:=num-1
    //循环到中间位置
    for i:=0;i<mid;i++{
        //多重赋值,左右两边元素交换
        strByte[i],strByte[j]=strByte[j],strByte[i]
        //右边指针往左移动
        j--
    }
    return string(strByte)
}
复制代码

 

posted @   唯一客服系统开发笔记  阅读(154)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
历史上的今天:
2018-05-17 [日常] Go语言圣经-竞争条件习题
2016-05-17 [android] 手机卫士黑名单功能(短信拦截)
2016-05-17 [javaSE] 数组(查找-二分查找)
点击右上角即可分享
微信分享提示
1
chat with us