zoukankan      html  css  js  c++  java
  • 【LeetCode算法-58/66】Length of Last Word/Plus One

    LeetCode第58题:

    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.

    Example:

    Input: "Hello World"
    Output: 5

    翻译:

    获取最后一个单词的长度

    思路:

    思路很简单,要注意一点就是一些特殊情况,比如全是空格、或者只有一个单词

    代码:

    class Solution {
        public int lengthOfLastWord(String s) {
            s = s.trim();
            if(s.length() == 0 ){
                return 0;
            }
            if(s.length() == 1){
                return 1;
            }
            return s.length() - 1 -s.lastIndexOf(" ");
        }
    }

     

    LeetCode第66题:

    Given a non-empty array of digits representing a non-negative integer, plus one to the integer.

    The digits are stored such that the most significant digit is at the head of the list, and each element in the array contain a single digit.

    You may assume the integer does not contain any leading zero, except the number 0 itself.

    Example 1:

    Input: [1,2,3]
    Output: [1,2,4]
    Explanation: The array represents the integer 123.

    Example 2:

    Input: [4,3,2,1]
    Output: [4,3,2,2]
    Explanation: The array represents the integer 4321.

    翻译:

    说了一大推,其实就是数组最后一个数字加1,但是数组的每个数字必须是个位数

    思路:

    其实就是整数的加法逻辑,现在改成数组,把其中的逻辑写出来而已。必须注意的是9加1等于10,要进一位

    代码:

    class Solution {
        public int[] plusOne(int[] digits) {
            int length = digits.length;
            digits[length - 1] += 1;
            for(int i = length -1 ;i>=0;i--){
                if(digits[i] == 10){
                    digits[i] = 0;
                    if(i!=0){
                        digits[i - 1] +=1;
                    }else{
                //新建一个数组
    int[] result = new int[length+1]; result[0] = 1; for(int j = 1;j<result.length;j++){ result[j] = digits[j-1]; } return result; } } } return digits; } }

    欢迎关注我的微信公众号:安卓圈

  • 相关阅读:
    SQL Server数据库中批量替换数据的方法
    js 鼠标移上去弹出层效果
    50个jQuery代码段帮你成为更好的JavaScript开发者
    MSN、腾讯QQ、SKYPE、阿里旺旺网页在线客服源代码
    正则表达式基础知识
    常用邮箱POP3和SMTP服务器汇总
    CS5序列号
    如何使用Oracle SQLDeveloper 中连接MS SQLServer和MySQL数据库
    Silverlight与后台数据库的三种技术实现基本的互操作(转)
    ADO 与ADO.NET
  • 原文地址:https://www.cnblogs.com/anni-qianqian/p/10920299.html
Copyright © 2011-2022 走看看