zoukankan      html  css  js  c++  java
  • Lc5413_重新排列句子中的单词

    package com.example.demo;
    
    /**
     * 5413. 重新排列句子中的单词
     * 显示英文描述
     * 我的提交
     * 返回竞赛
     * <p>
     * 通过的用户数
     * 1668
     * 尝试过的用户数
     * 2012
     * 用户总通过次数
     * 1678
     * 用户总提交次数
     * 3409
     * 题目难度
     * Medium
     * 「句子」是一个用空格分隔单词的字符串。给你一个满足下述格式的句子 text :
     * 句子的首字母大写
     * text 中的每个单词都用单个空格分隔。
     * 请你重新排列 text 中的单词,使所有单词按其长度的升序排列。如果两个单词的长度相同,则保留其在原句子中的相对顺序。
     * 请同样按上述格式返回新的句子。
     * <p>
     * 示例 1:
     * 输入:text = "Leetcode is cool"
     * 输出:"Is cool leetcode"
     * 解释:句子中共有 3 个单词,长度为 8 的 "Leetcode" ,长度为 2 的 "is" 以及长度为 4 的 "cool" 。
     * 输出需要按单词的长度升序排列,新句子中的第一个单词首字母需要大写。
     * 示例 2:
     * 输入:text = "Keep calm and code on"
     * 输出:"On and keep calm code"
     * 解释:输出的排序情况如下:
     * "On" 2 个字母。
     * "and" 3 个字母。
     * "keep" 4 个字母,因为存在长度相同的其他单词,所以它们之间需要保留在原句子中的相对顺序。
     * "calm" 4 个字母。
     * "code" 4 个字母。
     * 示例 3:
     * 输入:text = "To be or not to be"
     * 输出:"To be or to be not"
     */
    public class Lc5413 {
        public static String arrangeWords(String text) {
            String[] strs = text.split(" ");
            for (int i = 0; i < strs.length; i++) {
                for (int j = 0; j < strs.length - 1; j++) {
                    if (strs[j].length() > strs[j + 1].length()) {
                        String temp = strs[j];
                        strs[j] = strs[j + 1];
                        strs[j + 1] = temp;
                    }
                }
            }
    
    
            StringBuffer stringBuffer = new StringBuffer();
            for (int i = 0; i < strs.length; i++) {
                if (i == 0) {
                    String temp =
                            strs[i].substring(0, 1).toUpperCase() + strs[i].substring(1, strs[i].length());
                    stringBuffer.append(temp);
    
                } else {
                    stringBuffer.append(" ");
                    stringBuffer.append(strs[i].toLowerCase());
                }
    
            }
    
    
            return stringBuffer.toString();
        }
    
        public static void main(String[] args) {
    //        String str = "Leetcode is cool";
            String str = "Keep calm and code on";
            System.out.println(arrangeWords(str));
        }
    }
  • 相关阅读:
    地址路由使用
    SpringMVC的各种参数绑定方式
    SpringMVC 的 Controller 返回各种视图的处理方式
    jQuery过滤选择器:not()方法使用介绍
    js数组的操作
    ligerui grid行编辑示例
    ilter()和find()的区别
    java 文件字节输出流
    java 文件字节输入流
    java 创建一个File文件对象
  • 原文地址:https://www.cnblogs.com/xiaoshahai/p/12904768.html
Copyright © 2011-2022 走看看