注:本代码没有经过系统测试,可能有bug,欢迎提出问题。
python代码:
class Solution(object): def deleteSpace(self,s): if s == None or len(s) <=1: return s s = list(s) length = len(s) i, j = 0, 0 while j<length: if s[j]==" ": s[i] = " " i += 1 while j<length and s[j]==" ": j += 1 while j<length and s[j] != " ": s[i] = s[j] i += 1 j += 1 while i<length: s[i] = "" i += 1 print s return "".join(s)解题思路:定义i慢指针,j快指针。 1.当s[j]为空格时,将s[j]赋给s[i]并向前扫描,直到j大于字符串长度或遇到非空格结束。 2.当s[j]非空格时,将s[j]赋给s[i]并向前扫描,继续将s[j]赋给s[i],直到j大于字符串长度或遇到空格结束。 3.将s[i]后面的值赋”“