子数组

子数组

简单

说明

给定任意两个数组A和B,判断以下哪种情况成立:

  • 数组A与数组B相等;或
  • 数组A包含数组B(A是B的超数组);或
  • 数组A被数组B包含(A是B的子数组);或
  • 以上都不成立,因此数组A和B不相等

具体来说,如果两个数组的值相同且顺序一致,那么数组A与数组B相等。 如果数组A包含一段与B相等的连续子序列,那么A是B的超数组。 如果数组B包含一段与A相等的连续子序列,那么A是B的子数组。

例如:

  • 如果A = []且B = [](两个数组都为空),那么A和B相等
  • 如果A = [1, 2, 3]且B = [],那么A是B的超数组
  • 如果A = []且B = [1, 2, 3],那么A是B的子数组
  • 如果A = [1, 2, 3]且B = [1, 2, 3, 4, 5],那么A是B的子数组
  • 如果A = [3, 4, 5]且B = [1, 2, 3, 4, 5],那么A是B的子数组
  • 如果A = [3, 4]且B = [1, 2, 3, 4, 5],那么A是B的子数组
  • 如果A = [1, 2, 3]且B = [1, 2, 3],那么A和B相等
  • 如果A = [1, 2, 3, 4, 5]且B = [2, 3, 4],那么A是B的超数组
  • 如果A = [1, 2, 4]且B = [1, 2, 3, 4, 5],那么A和B不相等
  • 如果A = [1, 2, 3]且B = [1, 3, 2],那么A和B不相等

关于 Enum

使用 Enum 值来表示两个数组之间的关系,例如 SUBLIST。

想进一步了解 PowerShell 中的 Enum,请查看 Enum 模块。

通过 GitHub 编辑 链接将在新窗口或新标签页中打开
PowerShell Exercism

准备好开始 子数组 了吗?

注册 Exercism,借助 136 个练习 和真人导师指导,学习并掌握 PowerShell,全部免费。