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

C语言 | Leetcode C语言题解之第388题文件的最长绝对路径

题目:

题解:

#define MAX(a, b) ((a) > (b) ? (a) : (b))int lengthLongestPath(char * input){int n = strlen(input);int pos = 0;int ans = 0;int * level = (int *)malloc(sizeof(int) * (n + 1));memset(level, 0, sizeof(int) * (n + 1));while (pos < n) {/* 检测当前文件的深度 */int depth = 1;while (pos < n && input[pos] == '\t') {pos++;depth++;}/* 统计当前文件名的长度 */bool isFile = false;  int len = 0;   while (pos < n && input[pos] != '\n') {if (input[pos] == '.') {isFile = true;}len++;pos++;}/* 跳过当前的换行符 */pos++;if (depth > 1) {len += level[depth - 1] + 1;}if (isFile) {ans = MAX(ans, len);} else {level[depth] = len;}}free(level);return ans;
}

http://www.mrgr.cn/news/16820.html

相关文章:

  • 【ubuntu笔记】install beyond compare 4 on ubuntu 2.0
  • Swift 基本语法
  • 如何有效防止表单重复提交
  • 高效并发编程:在C++中实现线程池
  • C++ | Leetcode C++题解之第387题字符串中的第一个唯一字符
  • 问:equals与==在Java中的区别?
  • 3D打印透气钢与传统透气钢的差异
  • 为Ubuntu换颗“心”
  • Python 将Json转化成Xmind文件
  • 一键翻译全球:2024年跨文化交流的得力助手
  • 模型 错位竞争(战略规划)
  • Session 运行机制详解:从创建到销毁
  • BUUCTF派大星的烦恼
  • Java | Leetcode Java题解之第388题文件的最长绝对路径
  • uniapp使用defineExpose暴露和onMounted访问
  • 类文件及其加载机制
  • 【MySQL】主键优化原理篇——【数据组织方式&主键顺序插入&主键乱序插入&页分裂&页分裂】
  • 笔记 12 : 彭老师课本第 6 章, PWM ,代码实践
  • 数据结构:树形结构(树、堆)详解
  • Ajax_00000