检查队列元素在Python中是否成对连续

假设我们有一个充满数字的队列。我们必须检查队列中的连续元素是否成对连续。

因此,如果输入类似于que = [3,4,6,7,8,9],则输出将为True。

示例

让我们看下面的实现以更好地理解-

import queue
def solve(que):
   q = queue.Queue()
   for i in que:
      q.put(i)
   temp = []
   while q.qsize() != 0:
      temp.append(q.queue[0])
      q.get()
   temp2 = []
   while len(temp) != 0:
      temp2.append(temp[len(temp) - 1])
      temp.pop()
   result = bool(True)
   while len(temp2) > 1:
      x = temp2[len(temp2) - 1]
      temp2.pop()
      y = temp2[len(temp2) - 1]
      temp2.pop()
      if abs(x - y) != 1:
         result = False
      q.put(x)
      q.put(y)
   if len(temp2) == 1:
      q.put(temp2[len(temp2) - 1])
   return result
que = [3,4,6,7,8,9]
print(solve(que))

输入

[3,4,6,7,8,9]
输出结果
True

猜你喜欢