分析
将path按照"/"拆分成字符串temp,如果temp为"."就什么都不干,为".."则弹出ans最后一个,其他情况则加入到ans中。
class Solution {
public:
string simplifyPath(string path) {
vector<string> ans;
int len=path.length();
for(int i=0;i<len;){
if(path[i]=='/')i++;
else {
int index=i;
while(i<len&&path[i]!='/'){
i++;
}
string temp=path.substr(index,i-index);
if(temp==".")continue;
else if(temp==".."&&!ans.empty())ans.pop_back();
else if(temp!="."&&temp!="..")ans.push_back(temp);
}
}
if(ans.empty())return "/";
path="";
for(int i=0;i<ans.size();i++)
path+="/"+ans[i];
return path;
}
};