亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

Leet Code OJ 388. Longest Absolute File Path [Difficulty: Medium]

2019-11-11 05:16:32
字體:
來源:轉載
供稿:網友

題目

Suppose we abstract our file system by a string in the following manner:

The string “dir/n/tsubdir1/n/tsubdir2/n/t/tfile.ext” rePResents:

dir subdir1 subdir2 file.ext

The directory dir contains an empty sub-directory subdir1 and a sub-directory subdir2 containing a file file.ext.

The string “dir/n/tsubdir1/n/t/tfile1.ext/n/t/tsubsubdir1/n/tsubdir2/n/t/tsubsubdir2/n/t/t/tfile2.ext” represents:

dir subdir1 file1.ext subsubdir1 subdir2 subsubdir2 file2.ext

The directory dir contains two sub-directories subdir1 and subdir2. subdir1 contains a file file1.ext and an empty second-level sub-directory subsubdir1. subdir2 contains a second-level sub-directory subsubdir2 containing a file file2.ext.

We are interested in finding the longest (number of characters) absolute path to a file within our file system. For example, in the second example above, the longest absolute path is “dir/subdir2/subsubdir2/file2.ext”, and its length is 32 (not including the double quotes).

Given a string representing the file system in the above format, return the length of the longest absolute path to file in the abstracted file system. If there is no file in the system, return 0.

Note: The name of a file contains at least a . and an extension. The name of a directory or sub-directory will not contain a .. Time complexity required: O(n) where n is the size of the input string.

Notice that a/aa/aaa/file1.txt is not the longest file path, if there is another path aaaaaaaaaaaaaaaaaaaaa/sth.png.

翻譯

假定我們使用下面的方式來抽象文件系統: 字符串”dir/n/tsubdir1/n/tsubdir2/n/t/tfile.ext” 代表:

dir subdir1 subdir2 file.ext

目錄dir包含一個空的子文件夾subdir1和一個包含一個文件file.ext的子文件夾subdir2。 字符串”dir/n/tsubdir1/n/t/tfile1.ext/n/t/tsubsubdir1/n/tsubdir2/n/t/tsubsubdir2/n/t/t/tfile2.ext” 代表:

dir subdir1 file1.ext subsubdir1 subdir2 subsubdir2 file2.ext

找出這個文件系統中文件的最長路徑,并返回它的路徑長度。 例如上述第二個例子的最長路徑是”dir/subdir2/subsubdir2/file2.ext”,那么它的長度是32,包含“/”。 提示: 1. 一個文件名應該至少包含一個”.”號和一個后綴名。 2. 文件夾則一定不包含”.”號。 3. 時間復雜度需要: O(n)。 4. 跟目錄的層級無關。例如如果有一個路徑是“aaaaaaaaaaaaaaaaaaaaa/sth.png”,那“a/aa/aaa/file1.txt”就不是最長的路徑。

分析

首先,需要有個變量記錄當前文件名的長度,和最大的長度maxLen。當切換到另外一個子目錄的時候,為了能計算出當前長度,還需要保存它的父級目錄的長度,所以我采用了棧結構來保存每一級目錄的名稱長度,并且使用depth來記錄當前是第幾個層級。 其次,需要考慮’/n’和’/t’代表的含義。其中’/n’代表本次路徑已經結束,可以開始計算結果并清空相關計數器。其中’/t’的個數代表當前是第幾個層級。 最后,考慮到題目只統計最長的文件路徑,而不統計最長的文件夾路徑,所以加個isFile來區分。

java版代碼(時間復雜度O(n),空間復雜度O(n)):

public class Solution { public int lengthLongestPath(String input) { input += "/n"; int count = 0; boolean isFile = false; int depth = 0; int maxLen = 0; Stack<Integer> stack = new Stack<>(); char[] charArr = input.toCharArray(); for (int i = 0; i < charArr.length; i++) { if (charArr[i] == '/n') { if (depth != 0) { count += stack.get(depth - 1) + 1; } while (stack.size() > depth) { stack.pop(); } stack.push(count); if (isFile) { if (count > maxLen) { maxLen = count; } } count = 0; depth = 0; isFile = false; } else if (charArr[i] == '/t') { depth++; } else { if (charArr[i] == '.') { isFile = true; } count++; } } return maxLen; }}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
福利微拍一区二区| 免费99精品国产自在在线| 国产精品91视频| 亚洲高清一区二| 国产日本欧美一区| 欧美在线一级va免费观看| 97人洗澡人人免费公开视频碰碰碰| 亚洲天堂第二页| 97热精品视频官网| 久久av中文字幕| 精品丝袜一区二区三区| 91国内免费在线视频| 成人福利视频在线观看| 亚洲美女在线视频| 青青精品视频播放| 久久6免费高清热精品| 欧美日韩久久久久| 色综合伊人色综合网站| 国产一区二区三区18| 久久久国产精品x99av| 亚洲色图五月天| 日韩在线视频观看正片免费网站| 在线播放国产一区中文字幕剧情欧美| 日韩有码视频在线| 91成人国产在线观看| 国产精品色悠悠| 国产精品久久久91| 欧美在线观看网址综合| 欧美日韩成人精品| 亚洲欧美日韩另类| 日韩视频在线观看免费| 欧美老女人bb| 亚洲第一精品久久忘忧草社区| 欧美午夜宅男影院在线观看| 国产91色在线| 久久九九亚洲综合| 欧美激情免费在线| 永久免费毛片在线播放不卡| 欧美理论电影在线播放| 亚洲精品白浆高清久久久久久| 欧美成人精品h版在线观看| 亚洲国产精品久久久久秋霞不卡| 亚洲第一偷拍网| 久久久久在线观看| 一本色道久久综合亚洲精品小说| 国产精品视频yy9099| 久久精品视频播放| 日韩综合中文字幕| 亚洲天堂av在线免费观看| 亚洲欧洲一区二区三区久久| 久久久亚洲国产天美传媒修理工| 亚洲精品黄网在线观看| 欧美一级视频一区二区| 亚洲精品国产suv| 色综合久久天天综线观看| 黑人极品videos精品欧美裸| 亚洲精品自产拍| 久久久亚洲福利精品午夜| 久久伊人免费视频| 欧美性生交xxxxxdddd| 日本精品va在线观看| 欧美精品18videosex性欧美| 2019亚洲日韩新视频| 欧美激情视频在线观看| 久久精品国产91精品亚洲| 色婷婷av一区二区三区久久| 九九热在线精品视频| 在线播放精品一区二区三区| 国产在线日韩在线| 91在线视频免费| 午夜精品福利电影| 久久久精品美女| 欧美精品精品精品精品免费| 国产精品看片资源| 亚洲一区二区日本| 久久久久久久久国产| 国产欧美日韩丝袜精品一区| 亚洲精品按摩视频| 欧美黑人性生活视频| 一区三区二区视频| 91九色精品视频| 久久久久久久香蕉网| 国产一区二区三区在线免费观看| 欧美另类极品videosbest最新版本| 国产女同一区二区| 日韩在线精品一区| 亚洲伊人成综合成人网| 疯狂欧美牲乱大交777| 日韩av在线影院| 亚洲精品综合久久中文字幕| 国产精品日日摸夜夜添夜夜av| 亚洲国产欧美一区二区丝袜黑人| 国模吧一区二区| 日本久久久久亚洲中字幕| 欧美高清在线视频观看不卡| 欧美日韩精品在线播放| 国产亚洲精品激情久久| 国产精品久久久av久久久| 这里只有精品在线观看| 亚洲码在线观看| 国产精品视频在线播放| 亚洲伊人一本大道中文字幕| 中文字幕久久久| 国产精品久久久久aaaa九色| 成人免费网站在线看| 精品国产一区二区三区在线观看| 久久乐国产精品| 亚洲va欧美va在线观看| 色悠悠久久久久| 欧美成人性生活| 亚洲自拍另类欧美丝袜| 国产在线观看91精品一区| 国产欧美韩国高清| 国产精品18久久久久久首页狼| 中日韩午夜理伦电影免费| 日韩电影大全免费观看2023年上| 国产精品亚洲视频在线观看| 亚洲国产又黄又爽女人高潮的| 免费91麻豆精品国产自产在线观看| 国产一区av在线| 久久精品国产免费观看| 国产精品美女999| 51精品在线观看| 亚洲久久久久久久久久久| 亚洲福利小视频| 日韩视频免费中文字幕| 欧美久久久精品| 亚洲性视频网站| 久国内精品在线| 国产不卡av在线免费观看| 欧美亚洲国产精品| 国产成人涩涩涩视频在线观看| 成人精品视频久久久久| 亚洲国产成人精品一区二区| 亚洲乱码国产乱码精品精天堂| 亚洲视频在线免费观看| 日本中文字幕久久看| 日韩在线免费观看视频| 色999日韩欧美国产| www.久久久久久.com| 91九色国产在线| 精品成人国产在线观看男人呻吟| 欧美成人h版在线观看| 国产精品久久久久久久久久久久久久| 岛国视频午夜一区免费在线观看| 一本色道久久综合狠狠躁篇怎么玩| 亚洲香蕉伊综合在人在线视看| 国产精品美女久久久免费| 国产精品福利在线| 日韩欧美亚洲范冰冰与中字| 一本色道久久综合狠狠躁篇怎么玩| 欧美日韩性视频在线| 国产精品一区二区电影| 欧美日韩视频免费播放| 亚洲欧美日韩视频一区| 久久久精品久久| 国产精品一区二区三区久久| 久久久国产视频91| 国产精品高潮呻吟久久av野狼| 久久久久久久成人| 色综合导航网站| 亚洲欧洲日产国码av系列天堂| 亚洲片国产一区一级在线观看| 不卡av在线网站|