←上一题设将 n ( n>1 ) 个整数存放到一维数组 R 中。试设计一个在时间和空间两方面都尽可能高效的算法。将 R 中保存的序列循环左移 p(0<p<N ) 个位置,即将 R 中的数据由 <x0,x1,⋯,xn−1> 变换为 <xp,xp+1,⋯,xn−1,x0,x1,⋯,xp−1> 。要求: (1) 给出算法的基本设计思想。 (2) 根据设计思想,采用 C 或 C++ 或 Java 语言描述,关键之处给出注释。 (3) 说明你所设计算法的时间复杂度和空间复杂度。
下一题设栈 S 和队列 Q 的初始状态均为空,元素 a, b, c, d, e, f, g 依次进入栈 S 。若每个元素出栈后立即进入队列 Q,且 7 个元素出队的顺序是 b, d, c, f, e, a, g,则栈 S 的容量至少是( )。
→