Imagem de fundo

Acerca das características da implementação das estruturas...

Código para as questões de 23 a 26


1

class LinkEntry {

2

private Object element;

3

private LinkEntry link;

4

public LinkEntry (Object element, LinkEntry link) (

5

this.element = element;

6

this.link = link;

7

}

8

public Object getElement () { return element; )

9

public LinkEntry getlink () { return link; )

10

public void setlink (LinkEntry newLink) { link = newLink; )

11

}

12

public class Queue {

13

private LinkEntry front;

14

private LinkEntry rear;

15

private int count;

16

public Queue; () {

17

front = null;

18

rear = null;

19

count = 0;

20

}

21

public void arrive (Object element) {

22

LinkEntry entry = new LinkEntry(element, null) ;

23

if (front == null) {

24

front = Entry;

25

} else {

26

rear.setLink (entry);

27

}

28

rear = entry;

29

count++;

30

}

31

Object leave () {

32

Object element = front.getElement () ;

33

front = front.getLink() ;

34

count--;

35

return element;

36

}

37

Object peek() { return front.getElement () ;

38

int length () { return count; }

39

boolean empty () { return count == 0; )

40

boolean full () {

41

LinkEntry entry = new LinkEntry(null, null) ;

42

return entry == null;

43

}

44

}


Acerca das características da implementação das estruturas de dados do código apresentado, assinale a opção correta.


A

Invocações repetidas do método peek sobre uma instância do tipo Queue não podem ser realizadas, sob pena de alteração de estado nessa instância.


B

Invocações repetidas do método length sobre uma instância do tipo Queue não podem ser realizadas, sob pena de alteração de estado nessa instância.


C

Invocações repetidas do método empty sobre uma instância do tipo Queue não podem ser realizadas, sob pena de alteração de estado nessa instância.


D

Exceto em caso de esgotamento de espaço na memória da máquina virtual Java, o método full sempre retornará o valor false.