• LeetCode 844 比较含退格的字符串


    LeetCode 844 比较含退格的字符串

    问题描述
    给定 S 和 T 两个字符串,当它们分别被输入到空白的文本编辑器后,判断二者是否相等,并返回结果。 # 代表退格字符。
    注意:如果对空文本输入退格字符,文本继续为空。

    重构字符串

    执行用时:2 ms, 在所有 Java 提交中击败了74.87%的用户
    内存消耗:36.2 MB, 在所有 Java 提交中击败了99.88%的用户

    class Solution {
        public boolean backspaceCompare(String S, String T) {
            //一次循环消除所有'#'
            StringBuffer s = new StringBuffer(S);
            StringBuffer t = new StringBuffer(T);
            int curr = 0;
            while(curr<s.length()) {
                if(s.charAt(curr)=='#') {
                    if(curr==0) {
                        s.delete(curr, curr+1);
                    }
                    else {
                        s.delete(curr-1, curr+1);
                        curr--;
                    }
                }
                else {
                    curr++;
                }
            }
    
            curr = 0;
            while(curr<t.length()) {
                if(t.charAt(curr)=='#') {
                    if(curr==0) {
                        t.delete(curr, curr+1);
                    }
                    else {
                        t.delete(curr-1, curr+1);
                        curr--;
                    }
                }
                else {
                    curr++;
                }
            }
    
            if(s.length()!=t.length()) {
                return false;
            }
            for(int i=0; i<s.length(); i++) {
                if(s.charAt(i)!=t.charAt(i)) {
                    return false;
                }
            }
    
            return true;
        }
    }
    
  • 相关阅读:
    002变量
    001Java输入、eclipse快捷键
    040同步条件event
    kali配置ip,更新源,更新签名
    039条件变量同步(Condition)
    038信号量
    037多线程同步
    配置java环境变量(详细)
    提高你的Python能力:理解单元测试
    电影里的代码之《机械姬》:筛法求质数
  • 原文地址:https://www.cnblogs.com/CodeSPA/p/13838345.html
Copyright © 2020-2023  润新知