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

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

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

2019-11-11 05:51:27
字體:
來源:轉載
供稿:網友

題目

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
国产91色在线播放| 福利一区福利二区微拍刺激| 亚洲国产精品国自产拍av秋霞| 亚洲精品欧美一区二区三区| 国产精品一区二区三区久久| 国产精品人成电影在线观看| 欧美午夜精品伦理| 亚洲最大的免费| 午夜精品久久久久久久白皮肤| 亚洲国产精品女人久久久| 亚洲精品v天堂中文字幕| 91亚洲精品视频| 欧美老女人xx| 成人在线激情视频| 欧美成在线观看| 久久99热精品这里久久精品| 97在线视频免费播放| 日韩精品免费综合视频在线播放| 国产午夜精品视频免费不卡69堂| 日韩高清电影免费观看完整| 久久99亚洲热视| 亚洲国产精品高清久久久| 久久久久久久一区二区三区| 在线视频欧美性高潮| 国产专区欧美专区| 伊人伊成久久人综合网站| 97在线观看视频| 亚洲а∨天堂久久精品9966| 亚洲第一区第二区| 综合欧美国产视频二区| 亚洲精品乱码久久久久久金桔影视| 欧美性猛交xxxx黑人| 欧美裸体xxxx极品少妇软件| 国产精品视频久久久久| 亚洲精选中文字幕| 国产精品综合不卡av| 国产成人免费av电影| 亚洲欧洲美洲在线综合| 国产精品网红直播| 久久精品亚洲一区| 亚洲va久久久噜噜噜久久天堂| 亚洲成色777777女色窝| 狠狠干狠狠久久| 欧美成人免费全部| 亚洲国产成人91精品| 久久99国产精品自在自在app| 国产精品成人国产乱一区| 中文字幕精品在线视频| 欧美乱妇40p| 亚洲第一色中文字幕| 57pao成人国产永久免费| 亚洲男人天堂九九视频| 不卡av在线网站| 91精品免费视频| 欧美成人精品在线观看| 国产成一区二区| 亚洲偷欧美偷国内偷| 亚洲精品视频在线观看视频| 另类专区欧美制服同性| 亚洲人成网站色ww在线| 神马国产精品影院av| 欧洲美女7788成人免费视频| 国产成人精品免费视频| 66m—66摸成人免费视频| 精品国产1区2区| 欧美成人精品一区二区三区| 亚洲国产精品久久久| 日韩欧美在线视频| 色yeye香蕉凹凸一区二区av| 秋霞av国产精品一区| 久久av资源网站| 亚洲美女视频网站| 日本成人在线视频网址| 亚洲精品色婷婷福利天堂| 亚洲天堂成人在线视频| 福利视频一区二区| 日韩av手机在线| 久久久久久九九九| 日韩极品精品视频免费观看| 亚洲在线免费看| 欧美日韩国产在线看| 成人国产精品一区二区| 国产精品久久久久久超碰| 91国产视频在线| 一区二区亚洲精品国产| 中文字幕亚洲二区| 久久久噜久噜久久综合| 亚洲va欧美va国产综合剧情| 国产精品美女久久久久久免费| 91沈先生在线观看| 欧美成人三级视频网站| 精品一区二区三区四区| 日本不卡高字幕在线2019| 中文字幕视频一区二区在线有码| 亚洲综合中文字幕在线观看| 国产不卡av在线免费观看| 亚洲毛片在线观看.| 日韩风俗一区 二区| 欧美日韩国产一中文字不卡| 欧美日韩一区二区在线播放| 日韩亚洲综合在线| 在线国产精品视频| 免费99精品国产自在在线| 91极品女神在线| 日韩在线观看免费网站| 久久亚洲一区二区三区四区五区高| 日本欧美精品在线| 国产精品免费一区二区三区都可以| 亚洲一区二区三区在线免费观看| 成人亚洲欧美一区二区三区| 91精品国产综合久久久久久久久| 成人欧美在线视频| 国产精品福利网| 欧美成人精品一区| 国产精品夜色7777狼人| 在线观看日韩www视频免费| 97国产精品免费视频| 视频在线观看99| 国产欧美日韩亚洲精品| 精品国产欧美一区二区五十路| 久久久久久伊人| 欧美午夜精品久久久久久浪潮| 亚洲欧洲在线观看| 97超视频免费观看| 欧美成人免费播放| 成人欧美一区二区三区在线湿哒哒| 亚洲欧美在线免费观看| 69影院欧美专区视频| 精品久久久在线观看| 国产成人涩涩涩视频在线观看| 国产成人激情小视频| 日韩欧美在线中文字幕| 欧美在线视频网| 亚洲欧美制服第一页| 这里只有视频精品| 国产黑人绿帽在线第一区| 久久不射热爱视频精品| 欧美激情视频网站| 91色在线观看| 亚洲午夜未删减在线观看| 国产精品综合网站| 97国产真实伦对白精彩视频8| 亚洲国产精品悠悠久久琪琪| 国内伊人久久久久久网站视频| 国产第一区电影| 成人av电影天堂| 日本精品视频网站| 亚洲性夜色噜噜噜7777| 欧美激情日韩图片| 亚洲第一级黄色片| 国外视频精品毛片| 精品福利在线视频| 日韩成人av网| 国产精品18久久久久久麻辣| 久久精品国产69国产精品亚洲| 欧美在线观看网址综合| 亚洲一区二区三区777| 精品色蜜蜜精品视频在线观看| 国产成人亚洲综合青青| 久久天天躁狠狠躁夜夜av| 亚洲天堂第一页| 欧美激情视频网站| 韩日精品中文字幕| 亚洲第一免费网站|