[Leetcode] Simplify Path

題目鏈接https://oj.leetcode.com/problems/simplify-path/

Description

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".

算法思想

典型的字符串處理問題,先不想優(yōu)化的問題,先把邏輯結構和可能性理出來, 提示中已經給了兩種可能性,當然結合Unix的特性,可以得出一個流程圖,寫代碼之前劃了,弄上來挺麻煩的,就先這么著吧,有這么幾種可能性:(以/a/.b/../../c/為例)

1. 根目錄是/,到了根目錄..還是這個位置

2. 有文件名就能進入這個目錄,所以輸入a,得到的現(xiàn)在目錄為/a/

3. 一個點等于沒點,無效的,文件夾名中有點的情況需要再分析;

4. 非根目錄中..代表上一級目錄;

簡單一分析,你就看到了,這里做的是棧操作,后進先出,結果就是棧內元素。

AC代碼

https://oj.leetcode.com/submissions/detail/8709406/

關鍵詞

string, stack, regular

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • My code: My test result: 這道題目拖欠了一個多禮拜。。。因為傻逼的一門課,做樂高機器人,廢...
    Richardo92閱讀 355評論 0 1
  • 來自這個兄弟:http://blog.csdn.net/ddd_1206/article/category/685...
    580aa87075d3閱讀 1,223評論 0 18
  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,588評論 19 139
  • 2017.9.11早上8:30 浙江寧波余姚 1.意想不到珈由在車上無聊,對“給琪兒做一個蛋糕”這個事情卻極其感興...
    吳桂儀閱讀 385評論 1 4
  • 01 很多女生在外人面前可以笑得開心,而每當一個人獨處,那孤獨漠然的背影,似乎被全世界拋棄。 痛與傷,苦與淚,始終...
    陸路希閱讀 1,244評論 4 50

友情鏈接更多精彩內容