计算机科学

抽象数据类型

队列-基本

下面的java代码是一个基于数组的数据结构的简单实现,该数据结构可以是堆栈,也可以是队列。这是什么类型的结构,这三种方法应该如何使用一个(),两个()和三个()重新命名以便描述它们的功能?

12 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
公共data_structure私人int限制1000000私人int[]加勒比海盗int限制私人int大小0私人int限制-1公共无效一个int元素) {加勒比海盗元素大小++--公共int两个(){++int临时加勒比海盗加勒比海盗0大小- =1返回临时公共int三个(){返回加勒比海盗+1

假设在一个循环队列结构上执行以下操作。

  • 插入条目 一个 一个
  • 插入条目 B B
  • 插入条目 C C
  • 删除一个条目。
  • 删除一个条目。
  • 插入条目 D D
  • 插入条目 E E
  • 删除一个条目。
  • 插入条目 F F
  • 删除一个条目。

在完成这些操作之后,队列中剩下的项目是什么?

下面的代码使用了deque对象。deque对象与队列相似,不同的是它允许在队列的前面和后面插入/删除一个元素。下面的伪代码输出了什么?

12 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
函数isTrue字符串//定义一个返回布尔值的新函数'isTrue'描述:双端队列();//创建一个新的deque对象字符字符串描述:addRear字符布尔平等的真正的//创建一个名为true的布尔变量描述:大小()>1平等的) {第一个描述:removeFront()去年描述:removeRear()如果第一个! =去年) {平等的返回平等的布尔value_aisTrue“雷达”布尔value_bisTrue“+”布尔value_cisTrue“夫人”如果value_avalue_bvalue_c打印1其他的如果value_avalue_bvalue_c打印2其他的如果value_avalue_bvalue_c打印3.其他的如果value_avalue_bvalue_c打印4其他的如果value_avalue_bvalue_c打印5其他的打印6

addRear (e)方法将一个项添加到deque容器的尾部addFront (e)走到前面removeFront ()removeRear ()分别移除deque的前项和后项。

下面哪个选项最能代表队列数据结构?

A)一堆需要洗的脏盘子

B)单个共享资源上的请求,比如打印机

C,排队等着去游乐场的人

故选B。

下面是实现一个只使用两个int变量(self.sizeself.val)以保存其内容。

12 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
数学进口日志Integral_queuedef__init__自我):自我瓦尔0自我大小0def排队自我价值):自我瓦尔+ =价值战俘10自我大小自我大小+ =1# def双端队列(自我…)不完整的def偷看自我):返回自我瓦尔10defis_empty自我):返回自我大小==0

但是,这个队列只支持单位数作为元素。具体来说,唯一可以推入队列的元素是范围内的数字 1 1 9 9 .的出列()方法是不完整的。下列哪个方法正确地实现了出列()方法?

一个

1 2 3 4 5 6
def出列自我):权力战俘10自我大小-1受潮湿腐烂自我瓦尔/权力自我瓦尔自我瓦尔权力自我大小- =1返回受潮湿腐烂

B

1 2 3 4 5 5
def出列自我):受潮湿腐烂自我瓦尔10自我瓦尔自我瓦尔//10自我大小- =1返回受潮湿腐烂

C

1 2 3 4 5 5
def出列自我):受潮湿腐烂地板上日志瓦尔10))自我瓦尔/=10大小- =1返回受潮湿腐烂

D

1 2 3 4 5 5
def出列自我):受潮湿腐烂intstr自我瓦尔) [0])自我瓦尔intstr自我瓦尔) [1::])大小- =1返回受潮湿腐烂

×

问题加载…

注意加载…

设置加载…