思路:
1. `def removeDigit(self, number: str, digit: str) -> str:`:这是一个类方法,接受两个参数 `number` 和 `digit`,分别表示输入的数字字符串和要移除的数字字符,返回一个字符串。
2. `n = len(number)`:获取输入数字字符串的长度,用于迭代字符串中的每个字符。
3. `res = ""`:初始化一个空字符串 `res`,用于存储移除指定字符后得到的最大结果。初始时为空字符串是因为我们要找的是最大结果。
4. `for i in range(n):`:循环迭代输入数字字符串中的每个字符。
5. `if number[i] == digit:`:检查当前字符是否与要移除的数字字符相同。
6. `tmp = number[:i] + number[i+1:]`:如果当前字符与要移除的数字字符相同,则将该字符从字符串中移除。这里使用切片操作来获得移除当前字符后的字符串。
7. `res = max(res, tmp)`:将移除当前字符后的字符串 `tmp` 与当前最大结果 `res` 进行比较,取较大者作为新的最大结果。
8. 最后,返回变量 `res`,即移除指定字符后能得到的最大结果字符串。
题解:
class Solution:
def removeDigit(self, number: str, digit: str) -> str:
n = len(number)
res = "" # 存储移除指定字符后得到的最大结果
for i in range(n): # 遍历输入数字字符串中的每个字符
if number[i] == digit: # 如果当前字符与要移除的数字字符相同
# 从字符串中移除当前字符,得到移除后的字符串
tmp = number[:i] + number[i + 1:]
# 将移除当前字符后的字符串与当前最大结果进行比较,取较大者作为新的最大结果
res = max(res, tmp)
return res # 返回移除指定字符后能得到的最大结果字符串