這道題的思路還是比較清晰的,用棧嘛,麻煩是麻煩在這些層次的細節上。主要有下面幾個:
./和/:目前路徑,遇到這種,應該将後面的檔案夾或檔案入棧。
../:上一層路徑,遇到這種,應該做一次出棧操作,相當于傳回了上一層目錄。
//:可以直接簡化成‘/’。
還有下面幾個要注意的測試用例:
1. linux的路徑名可以含有很多特殊字元,比如“_”,".","*"等等,是以要特别注意含有"."的哪些路徑名。
2. 在路徑最後的..和.是不需要後面接上‘/‘的。
代碼寫的不是很好,回頭應該更正一下: