您的位置:首页 > 其它

LeetCoce-71-Simplify Path(栈)-Medium

2016-03-19 14:39 295 查看
题意理解:

简化路径名;

题目分析:

1. 注意 “.” 、".."特殊字符的处理;

2. 运用栈;

解题代码:

public class Solution {
public String simplifyPath(String path) {
String ans="/";
if(path.length()==0){
return ans;
}

Stack<String> stack=new Stack<String>();

String[] splitVal=path.split("/");

for(int i=0; i<splitVal.length;i++){
if(splitVal[i].equals(".")){
continue;
}else if(splitVal[i].equals("..")){
if(!stack.empty()){
stack.pop();
}
}else if(splitVal[i].length()!=0){
stack.push(splitVal[i]);
}
}

while(!stack.empty()){
if(ans.equals("/")){
ans+=stack.pop();
}else{
ans="/"+stack.pop()+ans;
}
}

return ans;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: