zoukankan      html  css  js  c++  java
  • java笔试之字符逆序(二)

    与字符逆序(一)不同,句子逆序,单词顺序。例如:I am a student 输出为student a am I。

    想法:先字符串句子逆序,然后针对每个单词再逆序一遍。

    package test;
    
    import java.util.Scanner;
    
    //一个句子单词顺序,句子逆序
    public class exam10 {
        public static void main(String[] args) {
            Scanner scanner = new Scanner(System.in);
            while (scanner.hasNext()) {
                String str = scanner.nextLine();
                char[] chars = str.toCharArray();
                reverse(chars, 0, chars.length - 1);
                reverseWord(chars);
                for (int i = 0; i < chars.length; i++) {
                    System.out.print(chars[i]);
                }
            }
            scanner.close();
        }
    
        // 字符串组逆序
        public static void reverse(char[] chars, int start, int end) {
            for (int i = start, j = end; i < j; i++, j--) {
                char temp = chars[i];
                chars[i] = chars[j];
                chars[j] = temp;
            }
        }
    
        public static void reverseWord(char[] sentence) {
            int start = 0;// 记录每一个word的开始位置
            for (int i = 0; i < sentence.length; i++) {
                if (sentence[i] != ' ') {
                    continue;
                } else {
                    // 第一个单词找到结尾位置,进行逆序
                    reverse(sentence, start, i - 1);
                    // 查找下一个位置
                    start = i + 1;
                }
            }
            reverse(sentence, start, sentence.length - 1);// 字符串最后一个单词逆序
        }
    }
  • 相关阅读:
    历史版本xcode的下载
    mac上安装hg
    xcode不能抓帧
    window buffer alignment
    highp 和 mediump
    AFBC mali
    AO composition
    gpu memory wait
    L2 cache//bifrost --- cortex-A55
    效果样式
  • 原文地址:https://www.cnblogs.com/bella-young/p/6409790.html
Copyright © 2011-2022 走看看