2710.力扣每日一题6/29 Java(字符串)

  • 博客主页:音符犹如代码
  • 系列专栏:算法练习
  • 关注博主,后期持续更新系列文章
  • 如果有错误感谢请大家批评指出,及时修改
  • 感谢大家点赞👍收藏⭐评论✍

目录

思路

解题方法

时间复杂度

空间复杂度

Code 


思路

从字符串 num 的末尾开始向前遍历,找到第一个非零字符的位置。这个位置之后的所有零都是尾随零,将字符串截取到这个位置即可得到不含尾随零的字符串。

解题方法

通过一个循环从字符串的末尾开始检查字符,如果是零就向前移动指针,直到遇到非零字符。然后使用 substring 方法截取字符串的前半部分。

时间复杂度

O(n),其中 n 是输入字符串 num 的长度。因为最多需要遍历整个字符串一次。

空间复杂度

O(n),主要是用于存储返回的截取后的字符串,其长度最大为输入字符串的长度。

Code

public class Solution {
    public String removeTrailingZeros(String num) {
        int end = num.length() - 1;
        while (end >= 0 && num.charAt(end) == '0') {
            end--;
        }
        return num.substring(0, end + 1);
    }
}

水激石则鸣,人激志则宏。——出自秋瑾

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值