if(hh<=tt&& i-k+1>q[hh]) hh;
while(hh<=tt&& a[q[tt]]>=a[i]) tt–;
q[tt]=i;
if(i>=k-1) printf(“%d “,a[q[hh]]);
i-k+1是窗口最后边在哪,如果当前的队头小于窗口最后边,就要hh++
是队头所在位置q[hh]不是hh
然后需要注意先把当前数放进去,因为当前数可能是要输出的数
输出需要注意的是在输出前要判断窗口是不是到长度k了,刚开始窗口里就一个数两个数时不输出
q数组存的是下标!