博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
leetcode 71 Simplify Path ------ java
阅读量:4460 次
发布时间:2019-06-08

本文共 1144 字,大约阅读时间需要 3 分钟。

Given an absolute path for a file (Unix-style), simplify it.

For example,

path = "/home/", => "/home"
path = "/a/./b/../../c/", => "/c"

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".
这道题就是化简地址,有两个规则:  /./  代表不变
                  /../   代表返回上级目录
还有就是Corner Cases中的特殊情况都有说明
 
 
这道题刚开始写了好半天,其实主要原因是,题目中有一个没有说明,那就是带有转义字符的情况:如果目录名字中含有‘/’,如果考虑这种情况会复杂许多。但是这道题其实没有考虑这种情况,也就是说将\这个符号当成一般的字符处理。所以也就没什么难点,就是考虑清楚情况。
可以使用自动机求解。
public class Solution {    public String simplifyPath(String path) {        int len = path.length();        if (len == 0)            return path;        Stack
stack = new Stack
(); int i = 0; while (i < len) { if (path.charAt(i) == '/') { while( i
= 0; j--) { result[j] = stack.pop(); } return String.valueOf(result); }}

 

转载于:https://www.cnblogs.com/xiaoba1203/p/5958881.html

你可能感兴趣的文章
进入meta模式关闭背光灯
查看>>
webstorm上svn的安装使用
查看>>
【JEECG技术文档】数据权限自定义SQL表达式用法说明
查看>>
使用 Bootstrap Typeahead 组件
查看>>
linux_cacti 配置之 安装snmp 服务
查看>>
201407-至今
查看>>
c# 应用事务
查看>>
优化杭州某著名电子商务网站高并发千万级大型数据库经验之- SQL语句优化(转)...
查看>>
WPF——TargetNullValue(如何在绑定空值显示默认字符)
查看>>
Linux之crontab
查看>>
清除浮动
查看>>
CenOS+宝塔(模拟)上线博客项目
查看>>
loadrunner Vugen-Tools General-Options-Replay设置
查看>>
redis限频
查看>>
Floyd判圈算法
查看>>
接口,lambda表达式与内部类(二)
查看>>
Phabricator是什么,代码审查工具
查看>>
Java虚拟机类加载机制
查看>>
DirectX:函数可以连接任意两个filter 分类: Direct...
查看>>
Android APP开发入门教程-Button 分类: JAVA ...
查看>>