关于golang:Golang力扣Leetcode剑指Offer字符串05-替换空格

4次阅读

共计 703 个字符,预计需要花费 2 分钟才能阅读完成。

题目 :请实现一个函数,把字符串 s 中的每个空格替换成 ”%20″。

链接 :力扣 Leetcode—剑指 Offer—字符串—05. 替换空格.

示例 1:

输出:s = “We are happy.”
输入:”We%20are%20happy.”

思路

  1. 一个办法是建设一个新的字符串,用 for range 遍历原字符串,应用 Switch 对 value 值进行抉择,case 空格则加上 %20,默认状况则是间接加上 value,留神要转为 string 就解决了。
  2. 另一种办法就是间接调用现有的库。

法一 Go 代码:

package main

import "fmt"

func replaceSpace(s string) string {
    var res string
    for _, v := range s {
        switch v {
        case ' ':
            // 遇到空格则加上 %20
            res += "%20"

        default:
            // 默认加上 v 值,然而要转为 string
            res += string(v)
        }
    }
    return res
}

func main() {
    a := "We are happy."
    fmt.Println(replaceSpace(a))
}

提交截图

法二 Go 代码:

package main

import "fmt"

func replaceSpace(s string) string{return strings.Replace(s,"","%20",-1)
    // 间接调用 Replace 函数,讲一下四个参数,// s 就是要解决的字符串,// 第一个“”代表要替换的字符,//“%20”就是替换为什么字符,//- 1 代表全副替换
}

func main() {
    a := "We are happy."
    fmt.Println(replaceSpace(a))
}

提交截图

正文完
 0