zoukankan      html  css  js  c++  java
  • leetcode 58.Length of Last Word

    题目:

    Given a string s consists of upper/lower-case alphabets and empty space characters ' ', return the length of last word in the string.
    
    If the last word does not exist, return 0.
    
    Note: A word is defined as a character sequence consists of non-space characters only.
    
    For example, 
    Given s = "Hello World",
    return 5.
    

     

    解决方案:

    public class Solution {
        public int lengthOfLastWord(String s) {
            //从后向前(从右向左)看
            if(s == null || s.length()==0)
                return 0;
            int len = 0;
            int i = s.length()-1;
            
            //先找到最后一个词,把整个字符串最后的空格全部忽略
            while(i>=0 && s.charAt(i)==' ')
                i--;
            //找到最后一个词,从右往左判断长度
            while(i>=0 && s.charAt(i)!=' '){
                len ++;
                i--;
            }
            return len;
        }
    }
    

     

    总结:

      这道题受之前一道题的影响,上来就想用java的自带函数lastIndexOf来做,结果做了一会做错了,写了好多代码,根据出错的提示得知要判断的东西挺多,然后就放弃了,开始换思路,这种思路就是从后往前坐,这个方法很简单,只需要判断一个大的问题就好了,那就是把最后的空格都忽略。

    有点感觉了!加油!

  • 相关阅读:
    shell 表达式
    manjaro 换源到中国并按照速度排序
    ORA-01950:对表空间 'USERS' 无权限
    normal 普通身份 sysdba 系统管理员身份 sysoper 系统操作员身份 dba和sysdba
    学生选课数据库SQL语句练习题
    多线程编程
    补充知识点
    输入输出
    集合作业
    银行(1)0925
  • 原文地址:https://www.cnblogs.com/Pillar/p/4309580.html
Copyright © 2011-2022 走看看