当前位置: 首页 > news >正文

做中英文网站semir是什么牌子衣服

做中英文网站,semir是什么牌子衣服,营业执照包含网站开发,wordpress 更换谷歌1.388. 文件的最长绝对路径 - 力扣(LeetCode) 其实看懂了就还好 用一个栈来保存所遍历过最大的文件的绝对路径的长度,栈顶元素是文件的长度,栈中元素的个数是该文件目录的深度,非栈顶元素就是当时目录的长度 检查此…
1.388. 文件的最长绝对路径 - 力扣(LeetCode)

其实看懂了就还好 

用一个栈来保存所遍历过最大的文件的绝对路径的长度,栈顶元素是文件的长度,栈中元素的个数是该文件目录的深度,非栈顶元素就是当时目录的长度

检查此时所所遍历的目录的深度,看有多少个 "\t",因为根目录是第一级,所以深度从1开始计算而不是从0开始计算

再来判断文件的长度,遇到 “\n”,就代表文件遍历完了,要换一层目录,遇到pos > n说明遍历完辣

然后检查一下之前有没有遍历过深度更大的文件,写的时候这里半天没搞懂,报一丝

具体用 st.size() 与 depth 之间的大小关系判断,如果st.size() >= depth 说明曾经遍历过深度更大的文件。

等一下,我又发现我理解错了,这个栈的作用不是我所理解的保存文件绝对路径的长度,他是用来帮助计算此时所遍历到的文件的长度,然后每次更新ans值记录最大的长度。

怎么正确计算呢,话接上文,曾经遍历过深度更大的目录或文件,说明此时所遍历的文件或者是此时所在的目录发生了路径跳转,不是那个深度更大的目录或是文件了,栈中包含的不必要的更深层的长度信息,但是我们要计算的是此时所在文件或是目录的路径长度。所以就回退,回退到上一级目录,也是它俩的共同父亲目录,去计算长度信息。

class Solution {
public:int lengthLongestPath(string input) {int n = input.size();int pos = 0, ans = 0;stack<int> st;while(pos < n){// 统计当前文件深度int depth = 1;while(pos < n && input[pos] == '\t'){depth++, pos++;}//统计文件夹的长度int len = 0;bool flag = false;while(pos < n && input[pos] != '\n'){if(input[pos] == '.'){flag = true;}pos++, len++;}//跳过换行符pos++;//计算长度if(st.size() >= depth){st.pop();}//加上前面的目录路径if(!st.empty()){len += st.top() + 1;}if(flag)ans = max(ans, len);st.emplace(len);}return ans;}
};

http://www.hengruixuexiao.com/news/52218.html

相关文章:

  • 整人网站建设正规软件开发培训学校
  • 做网站就上房山华网天下怎么在百度发广告
  • 论坛做网站好吗百度关键词优化系统
  • 集团公司网站源码电子商务营销策划方案
  • 曹县网站开发公司网站上做推广
  • 怎么查网站的所有权网站 软件
  • 威海网站建设哪家好网域名查询地址
  • 广东有做阿里网站的吗平谷头条新闻
  • 织梦如何新建网站站长工具seo查询5g5g
  • 网站banner滚动间隔seo竞价推广
  • 太原网站建设斯飞网络市场监督管理局职责范围
  • 上高县建设局网站企业品牌推广方案
  • 可以做烟草网站谷歌优化排名公司
  • H5平台网站建设免费b站在线观看人数在哪儿
  • 南充网站建设多少钱高清的网站制作
  • 云南建投第五建设有限公司网站网站百度关键词seo排名优化
  • 手机不想访问指定网站怎么做站内推广和站外推广的区别
  • 深圳电商代运营公司排名刷关键词优化排名
  • 可以用手机做网站吗北京培训学校
  • 济南高端网站设计培训教育机构
  • 新闻网站建设的原因郑州seo排名哪有
  • 推荐自助建网站平台seo搜索引擎实战详解
  • 网站制作设计杭州营销策划公司排名
  • xrea wordpress百度快速排名优化工具
  • 免费的ppt网站企业网站设计与推广
  • 阿里巴巴b2b商业模式分析网络营销的优化和推广方式
  • 怎么做诈骗网站吗广州seo推广
  • 这个网站的建设流程查询关键词排名软件
  • 什么视频网站可以做链接地址网盟推广
  • 建网站的流程费用如何设计网站