
解题代码
class Solution { public String simplifyPath(String path) { /** * 给你一个规则,简化字符串 * 1. 倒退 .. * 2. 忽略 . / * 3. 正常 */ Deque<String> deque = new LinkedList<>(); String[] strings = path.split("/"); for (String s : strings) { if(s.equals("..")){ if(!deque.isEmpty()) deque.removeLast(); else continue; } else if(s.equals(".") || s.equals("")) continue; else deque.addLast(s); } StringBuilder stringBuilder = new StringBuilder("/"); int size = deque.size(); for (int i = 0; i < size; i++) { stringBuilder.append(deque.removeFirst()); if(i < size - 1)stringBuilder.append('/'); } return stringBuilder.toString(); }}