专栏首页学习日记Golang Leetcode 345. Reverse Vowels of a String.go

Golang Leetcode 345. Reverse Vowels of a String.go

版权声明:原创勿转 https://blog.csdn.net/anakinsun/article/details/89088919

思路

先用map保存所有的元音字母,然后遍历交换

code

func reverseVowels(s string) string {
	t := []byte(s)
	m := make(map[byte]bool)
	m['o'], m['e'], m['a'], m['i'], m['u'] = true, true, true, true, true
	m['O'], m['E'], m['A'], m['I'], m['U'] = true, true, true, true, true
	for i, j := 0, len(t)-1; i < j; i, j = i+1, j-1 {
		for i < j && !m[t[i]] {
			i++
		}
		for j > i && !m[t[j]] {
			j--
		}
		if i >= j {
			break
		}
		t[i], t[j] = t[j], t[i]
	}
	return string(t)

}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Golang Leetcode 766. Toeplitz Matrix.go

    更多内容请移步我的repo:https://github.com/anakin/golang-leetcode

    anakinsun
  • Golang Leetcode 540. Single Element in a Sorted Array.go

    版权声明:原创勿转 https://blog.csdn.net/anakinsun/article/details/89211328

    anakinsun
  • Leetcode Golang 139. Word Break.go

    版权声明:原创勿转 https://blog.csdn.net/anakinsun/article/details/88992690

    anakinsun
  • Angular sandbox项目的tsconfig.json内容一览

    指定 ECMAScript 目标版本: ‘ES3’ (default), ‘ES5’, ‘ES2015’, ‘ES2016’, ‘ES2017’, or ‘ES...

    Jerry Wang
  • 元数据管理|Hive Hooks和Metastore监听器介绍

    元数据管理是数据仓库的核心,它不仅定义了数据仓库有什么,还指明了数据仓库中数据的内容和位置,刻画了数据的提取和转换规则,存储了与数据仓库主题有关的各种商业信息。...

    Spark学习技巧
  • Yaml 速成查询表

    若是接触过编程数据结构的,对这个上手贼快. 写过json这些的...主要关注下缩进这些,理解下概念即可! 这里只列出非常高频且通用性高的使用姿势,个别骚姿势自行...

    CRPER
  • vscode-setting.json配置

    xing.org1^
  • JDBC URL 那些事儿

    JDBC是我们经常使用的,那URL中常用的那些参数你是否知道呢?本文梳理了常用的参数说明。

    问天丶天问
  • 使用typescript开发angular模块(编写模块)

    之前在使用typescript开发angular模块(发布npm包)一文中基本掌握了怎么发布一个typescript写的npm包。但是离目标还有段距离。

    易兒善
  • 快速搭建博客-高级篇-增加功能

    侧栏设置包括:侧栏位置、侧栏显示与否、文章间距、返回顶部按钮等等 打开 主题配置文件 找到sidebar字段

    瑞新

扫码关注云+社区

领取腾讯云代金券