aboutsummaryrefslogtreecommitdiff
path: root/remove_subfolder_filesystem.py
diff options
context:
space:
mode:
Diffstat (limited to 'remove_subfolder_filesystem.py')
-rw-r--r--remove_subfolder_filesystem.py18
1 files changed, 9 insertions, 9 deletions
diff --git a/remove_subfolder_filesystem.py b/remove_subfolder_filesystem.py
index 484831f..8270975 100644
--- a/remove_subfolder_filesystem.py
+++ b/remove_subfolder_filesystem.py
@@ -16,15 +16,15 @@ class Solution(object):
:type folder: List[str]
:rtype: List[str]
"""
- folder.sort(key=lambda x: len(x))
- vis = set()
- for i in folder:
- for j in range(2, len(i)):
- if i[j] == "/" and i[:j] in vis:
- break
- else:
- vis.add(i)
- return list(vis)
+ n = len(folder)
+ folder.sort()
+ ans = []
+ ans.append(folder[0])
+ for i in range(1, n):
+ last = ans[-1]
+ if not folder[i].startswith(last + "/"):
+ ans.append(folder[i])
+ return ans
if __name__ == "__main__":