Simplify Path
来源:互联网 发布:淘宝卖的猛犸象牙猫腻 编辑:程序博客网 时间:2024/06/09 19:48
Given an absolute path for a file (Unix-style), simplify it.
For example,
path = "/home/"
, => "/home"
path = "/a/./b/../../c/"
, => "/c"
click to show corner cases.
Corner Cases:
- Did you consider the case where path =
"/../"
?
In this case, you should return"/"
. - Another corner case is the path might contain multiple slashes
'/'
together, such as"/home//foo/"
.
In this case, you should ignore redundant slashes and return"/home/foo"
.
string simplifyPath(string path) {stack<string> s;string str;for (int i=0;i<path.size();i++){if (path[i] =='/'){if (str ==".."){if (!s.empty()){s.pop();}}else if (str !="."&&str!=""){s.push(str);}str ="";}else{str +=path[i];}}if (str ==".."){if (!s.empty()){s.pop();}}else if (str != "." && str != "") s.push(str);if (s.empty()){return "/";}string ret;while (!s.empty()){ret ="/" +s.top()+ret;s.pop();}return ret;}
0 0
- Simplify Path
- Simplify Path
- Simplify Path
- Simplify Path
- Simplify Path
- Simplify Path
- Simplify Path
- Simplify Path
- Simplify Path
- Simplify Path
- Simplify Path
- Simplify Path
- Simplify Path
- Simplify Path
- Simplify Path
- Simplify Path
- Simplify Path
- Simplify Path
- UVA - 140 Bandwidth(全排列枚举)
- 【HDU2888】BurningSide定理+因子分解+求逆元+矩阵快速幂
- UVA 10859 有向无环图的动态规划
- 如何使用PHP缓存?
- Android大图片裁剪终极解决方案
- Simplify Path
- 《老罗的Android之旅》导读PPT
- 家训
- 2014年8月4日 金砖银行来了
- Excel公式与函数案例速查手册/电脑技巧从入门到精通丛书
- UVa-10098-Generating Fast
- 【ZOJ】2770 Burn the Linked Camp 差分约束
- LeetCode 3 Max Points on a Line
- CHROME中好用的插件