登录 注册
当前位置:主页 > 资源下载 > 5 > 该项目通过示例演示数据结构和算法,展示了其在 LeetCode 上的耗时

该项目通过示例演示数据结构和算法,展示了其在 LeetCode 上的耗时

  • 更新:2024-08-10 14:55:08
  • 大小:59KB
  • 推荐:★★★★★
  • 来源:网友上传分享
  • 类别:其它 - 开发技术
  • 格式:ZIP

资源介绍

leetcode 耗时数据结构和算法 该项目通过示例演示数据结构和算法概念。 大O 描述算法的性能。 时间复杂度: 算法消耗的时间基于输入的长度/大小。 空间复杂度: (额外)基于输入长度/大小的算法所需的空间。 分配给输入的空间不计算在内。 O(1): 不变。 输入的大小无关紧要。 算法总是需要恒定的时间来运行。 上): 线性。 随着输入的增长,算法的成本也线性增长。 如果输入计数为 n,则算法将执行 n 次操作。 例如:循环遍历所有输入元素并执行操作。 O(n^2): 二次方。 如果输入计数为 n,则算法将执行 n*n 次操作。 如果输入的大小很大,则比线性更糟糕。 例如:多个循环遍历所有输入元素以执行操作。 O(log n): 对数。 如果输入计数为 n,则算法将执行 log n 次操作。 比线性和二次方更有效和可扩展。 例如:对排序数组进行二分搜索。 O(2^n): 指数。 根本没有可扩展性。 随着输入大小的增长,执行的操作数量呈指数增长。 基本线性数据结构 数组: 最简单的数据结构。 在 C# 中:静态(数组) - 固定大小与动态(列表) - 自动增长或缩小。 LookupB