zoukankan      html  css  js  c++  java
  • LF.281.Remove Spaces

    Given a string, remove all leading/trailing/duplicated empty spaces.

    Assumptions:

    The given string is not null.
    Examples:

    “ a” --> “a”
    “ I love MTV ” --> “I love MTV”

     1 public String removeSpaces(String input) {
     2         // Write your solution here
     3         //corner case
     4         if (input.isEmpty()){
     5             return input ;
     6         }
     7         /*
     8         return [0, i) j is the counter
     9         * case 1: not space: input[i++] = input[j++]
    10         * case 2: if space
    11         *         2.1: leading space: skip
    12         *         i = 0
    13         *         2.2: duplicate space: keep the first space
    14         *         j != j-1 : j一定是SPACE, J-1 如果不是的话,把当前的SPACE 给I 吃
    15         *         2.3: trailing space : remove
    16         *         j to the end, and i = "", i--
    17         * */
    18         int slow = 0, fast = 0;
    19         char[] chars = input.toCharArray();
    20         while (fast < chars.length){
    21             if (chars[fast] !=' ' ){
    22                 chars[slow++] = chars[fast++] ;
    23             } else{
    24                 //非开头, 中间没连续_ 末尾可能进去一个 _
    25                 if (slow>0 && chars[fast] != chars[fast-1]){
    26                     chars[slow++] = chars[fast++] ;
    27                 } else{
    28                     fast++ ;
    29                 }
    30             }
    31         }
    32         //post-processing: it is possible we still have one trailing ' '
    33         if (slow>0 && chars[slow-1] == ' '){
    34             return new String(chars, 0, slow-1) ;
    35         }
    36         return new String(chars, 0, slow) ;
    37     }

  • 相关阅读:
    angular学习一框架结构认识
    关于react上线系列问题及解决方案
    typescript学习笔记
    keepalived + glusterfs实现高可用
    nginx限制单个IP的最大连接数量限制下载速度
    初识Python.day2
    初识Python
    服务器安装到优化
    windows云服务器数据迁移
    z字形变换
  • 原文地址:https://www.cnblogs.com/davidnyc/p/8721937.html
Copyright © 2011-2022 走看看