首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

翻转单词顺序

难度:简单 来源:剑指 Offer 58 - I 输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。为简单起见,标点符号和普通字母一样处理。...示例 3: 输入: "a good example" 输出: "example good a" 解释: 如果两个单词间有多余的空格,将反转后单词间的空格减少到只含一个。...function(s) { s = s.trim() // 去除字符串左右两边空格 let res = [] let j = s.length - 1, i = j // i、j分别记录单词左右边界...== ' ') i-- // 确定一个单词的左边界 res.push(s.substring( i + 1, j + 1 ) + ' ') // 在单词后面拼一个空格,并加入到返回结果的数组中...while(i >= 0 && s.charAt(i) === ' ') i-- // 把指针移动到下一个单词的右边界 j = i } return

67930
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    翻转单词顺序

    翻转单词顺序 2. 描述 输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。为简单起见,标点符号和普通字母一样处理。例如输入字符串"I am a student....示例 3: 输入: “a good example” 输出: “example good a” 解释: 如果两个单词间有多余的空格,将反转后单词间的空格减少到只含一个。...说明: 无空格字符构成一个单词。 输入字符串可以在前面或者后面包含多余的空格,但是反转后的字符不能包括。 如果两个单词间有多余的空格,将反转后单词间的空格减少到只含一个。 3....1 3.1.1 思路 现将字符串去掉首尾空格后,用 split() 进行分割; 然后用一个 StringBuilder 来存放最终结果; 反序遍历分割后的字符数组,当字符串元素长度大于 0 时(跳过空单词

    52230

    翻转字符串里的单词

    翻转字符串里的单词 给定一个字符串,逐个翻转字符串中的每个单词。 说明: 无空格字符构成一个单词。 输入字符串可以在前面或者后面包含多余的空格,但是反转后的字符不能包括。...如果两个单词间有多余的空格,将反转后单词间的空格减少到只含一个。 进阶: 请选用 C 语言的用户尝试使 ,意思是说原地反转。 输入: " hello world! " 输出: "world!...子问题: 单词有空格,去掉多余空格。 反转单词。 反转步骤1和2之后的字符串。 算法描述: 第一步:如何删除多余空格?...(通过队列保存拆分后单词这个想法可以想到) 假设 这是这个单词位置 A |B |C |D 输出: "example good a" 第二步:反转一个单词 如何确定每个单词位置。...//理想情况 eg1,大小没有发生变化 //遍历一次 start单词开始位置,end单词位置。

    88310
    领券