【发布时间】:2021-07-28 21:59:44
【问题描述】:
我正在尝试找出一种方法来检查元素序列中是否存在顺序。 例如:
orderExists = [
['a','c','d','e'],['b','d','f'],['a','b','c','e']
]
orderViolation = [
['a','c','d','e'],['b','d','f'],['a','e','c','b']
]
订单存在是因为有效序列应类似于a,b,c,d,e,f。
子列表中的元素可能不存在。
例如,orderExists[0] = ['a','c','d','e'] b 和 f 不存在,但只要 c 出现在 a 之后并且在 d 之前,就会遵守顺序。
因为orderViolation[2] = ['a','e','c','b'] e 不应该在c 之前,所以违反了顺序。
这也是一个测试用例,我不知道有效的序列,我唯一拥有的是上面示例中的子列表列表。
有没有什么有效的方法可以判断订单是否存在?
注意:子列表不仅仅包含按字母顺序排列的元素。
例如:纽约 --> 洛杉矶 --> 芝加哥
orderExists = [
['Los Angeles', 'Chicago'],
['New York','Los Angeles'],
['New York','Chicacgo']
]
【问题讨论】: