句子反转——牛客刷题(java)

题目描述:

给定一个句子(只包含字母和空格), 将句子中的单词位置反转,单词用空格分割, 单词之间只有一个空格,前后没有空格。 比如: (1) “hello xiao mi”-> “mi xiao hello”

解题思路:

假设这条句子有n个单词:句子反转实质,将第1个元素与最后1个元素交换,第2个元素与倒数第2个元素交换····················第n/2-1个元素与倒数n/2-1个元素交换。

代码:

 1 import java.util.Scanner;
 2 public class stringReverse {
 3     public static void main(String[] args){
 4         Scanner scan=new Scanner(System.in);
 5         String str=scan.nextLine();
 6         String[] wordArray=str.split(" ");
 7         int length=wordArray.length;
 8         for(int i=0;i<length/2;i++){                       //交换过程
 9             String temp=wordArray[i];
10             wordArray[i]=wordArray[length-i-1];
11             wordArray[length-i-1]=temp;
12         }
13         for(int i=0;i<length;i++){                          //输出
14             if(i==length-1){
15                 System.out.print(wordArray[i]);
16             }
17             else{
18                 System.out.print(wordArray[i]+" ");
19             }
20         }
21     }
22 }

 

转载于:https://www.cnblogs.com/darlinFly/p/9351628.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值