class Solution {
public:
string clearDigits(string s) {
}
};
100324. 清除数字
给你一个字符串 s
。
你的任务是重复以下操作删除 所有 数字字符:
请你返回删除所有数字字符以后剩下的字符串。
示例 1:
输入:s = "abc"
输出:"abc"
解释:
字符串中没有数字。
示例 2:
输入:s = "cb34"
输出:""
解释:
一开始,我们对 s[2]
执行操作,s
变为 "c4"
。
然后对 s[1]
执行操作,s
变为 ""
。
提示:
1 <= s.length <= 100
s
只包含小写英文字母和数字字符。原站题解
php 解法, 执行用时: 15 ms, 内存消耗: 19.9 MB, 提交时间: 2024-09-05 15:55:35
class Solution { /** * @param String $s * @return String */ function clearDigits($s) { $st = []; foreach ( str_split($s) as $c ) { if ( is_numeric($c) ) { array_pop($st); } else { $st[] = $c; } } return implode('', $st); } }
javascript 解法, 执行用时: 69 ms, 内存消耗: 51.7 MB, 提交时间: 2024-09-05 15:50:08
/** * @param {string} s * @return {string} */ var clearDigits = function(s) { const st = []; for (const c of s) { if ('0' <= c && c <= '9') { st.pop(); } else { st.push(c); } } return st.join(''); };
rust 解法, 执行用时: 3 ms, 内存消耗: 2 MB, 提交时间: 2024-09-05 15:49:55
impl Solution { pub fn clear_digits(s: String) -> String { let mut st = vec![]; for c in s.bytes() { if c.is_ascii_digit() { st.pop(); } else { st.push(c); } } unsafe { String::from_utf8_unchecked(st) } } }
python3 解法, 执行用时: 40 ms, 内存消耗: 16.4 MB, 提交时间: 2024-06-10 00:13:14
class Solution: def clearDigits(self, s: str) -> str: st = [] for c in s: if c.isdigit(): st.pop() else: st.append(c) return ''.join(st)
java 解法, 执行用时: 1 ms, 内存消耗: 41.6 MB, 提交时间: 2024-06-10 00:12:59
class Solution { public String clearDigits(String s) { StringBuilder st = new StringBuilder(); for (char c : s.toCharArray()) { if (Character.isDigit(c)) { st.deleteCharAt(st.length() - 1); } else { st.append(c); } } return st.toString(); } }
cpp 解法, 执行用时: 4 ms, 内存消耗: 7.5 MB, 提交时间: 2024-06-10 00:12:47
class Solution { public: string clearDigits(string s) { string st; for (char c : s) { if (isdigit(c)) { st.pop_back(); } else { st += c; } } return st; } };
golang 解法, 执行用时: 0 ms, 内存消耗: 2.2 MB, 提交时间: 2024-06-10 00:12:36
// 用栈维护,遇到数字则弹出栈顶,否则把字符入栈。最后从栈底到栈顶就是答案。 func clearDigits(s string) string { st := []rune{} for _, c := range s { if unicode.IsDigit(c) { st = st[:len(st)-1] } else { st = append(st, c) } } return string(st) }