• 句子反转——牛客刷题(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 }
  • 相关阅读:
    JDK8 Optional类使用
    Kafka RocketMQ
    Dubbo,ElasticSearch,JVM,多线程/高并发,消息中间件 常问问题
    Redis
    java jvm 虚拟机
    25 岁做什么,可在 5 年后受益匪浅?
    设计模式
    并发与并行的理解
    多线程学习
    FireFox 如何在当前页面打开书签
  • 原文地址:https://www.cnblogs.com/darlinFly/p/9351628.html
Copyright © 2020-2023  润新知