# 0071. Simplify Path ###### tags: `Leetcode` `FaceBook` `Medium` `Stack` Link: https://leetcode.com/problems/simplify-path/ ## 思路 用Stack存结果,然后拼起来答案 **有一个很tricky的地方是第二个条件判断,因为如果是"."或".."都不要,所以就直接用"..".contains(s)来做判断** **然后还有就是把stack里面的元素存到 for example StringBuilder里面的时候,可以不需要用pop,但要注意在建Stack的时候要声明里面放的是String** ## Code ```java= class Solution { public String simplifyPath(String path) { Stack<String> stack = new Stack<>(); StringBuilder sb = new StringBuilder(); for(String s: path.split("/")){ if(s.equals("..") && !stack.isEmpty()){ stack.pop(); } else if(!"..".contains(s)){ stack.push(s); } } for(String i:stack){ sb.append("/"+i); } return sb.length()==0?"/":sb.toString(); } } ```
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up