Fila de prioridade de Javascript

| | | | | | | |

Como usar PriorityQueue em Java

As filas de prioridade são usadas na programação para criar estruturas de dados onde o item de dados com o valor mais alto deve ser processado primeiro pela estrutura.

codificação em Java, você pode se deparar com uma situação em que deseja implementar a fila de prioridade. É aqui que entra a interface Java Queue. No entanto, como a fila é uma interface, ela não pode ser implementada diretamente no código. Se você quiser criar uma fila de prioridade com a estrutura de dados empilhada, precisará usar PriorityQueue.

Este tutorial discutirá os conceitos básicos de PriorityQueue em Java e explorará como criar uma fila . Este tutorial também explorará os principais métodos oferecidos pelo PriorityQueue que podem ser usados para recuperar e manipular o conteúdo da fila .

Código Java e PriorityQueue

Filas, como pilhas, são fornecidas estruturas que possuem uma ordem específica na qual as operações são executadas. No caso de queues, as operações são realizadas para First In, First Out (FIFO). Isso significa que o primeiro item da lista será sempre o primeiro a sair - . A fila é classificada pelos itens inseridos

Suponha que você esteja em um restaurante e tenha feito um pedido. Recomendamos que você seja servido no momento em que cada cliente pediu sua comida, porque essa é a abordagem mais agradável. Então, se você pediu sua comida depois de Jack, você quer ser servido imediatamente depois de Jack. Este é um exemplo de uma fila .

Para os propósitos deste tutorial, vamos focar no desenvolvimento do trabalho PriorityQueue na interface queue, wait, que é usada para criar linhas de fila de prioridade em Java.

PriorityQueues são um tipo de fila i cujos itens são classificados de acordo com sua prioridade. Isso significa que em uma fila com valores ‚Äã‚Äã5 e 10, 10 sempre estará no topo da fila , mesmo que tenha sido adicionado por último.

Criar fila de prioridade

Para criar uma fila de prioridade em Java, você deve primeiro importar o java.util.PriorityQueue . Este pacote contém o método PriorityQueue que podemos usar para criar nossas filas. Podemos importar o pacote PriorityQueue usando este código:

agora, importamos PriorityQueue, podemos criar uma fila de espera usando o pacote. a sintaxe usada para criar um PriorityQueue:

FIND Seja:

  • PriorityQueue informa ao nosso programa que ele deseja criar uma fila de prioridade
  • DataType é o tipo de dados para nossa fila, aguardando para armazenar.
  • queue_name é o nome da variável para a qual a fila de espera, nós criar será. premiado
  • novo PriorityQueue (); inicialize a priori a fila cale a boca

Então suponha que queremos criar uma fila que armazene pedidos de clientes em nosso restaurante, queremos que nossa fila armazene o número da mesa de cada cliente, podemos criar essa pilha usando o seguinte código: ..

Neste exemplo, criamos uma instância de PriorityQueue chamada orders integer values ‚Äã‚Äã que armazena. em nossa queue , os itens serão acessados e excluídos usando a estrutura de dados FIFO.

Adicionar elemento a PriorityQueue

Em Java, cada elemento em uma fila é chamado elemento.

para adicionar um item a uma fila , podemos usar o add() Este método recebe um parâmetro: valor do item que você deseja adicionar à sua fila . Se a fila de espera e estiver cheia, o add() retornará uma exceção.

Além disso, podemos usar o Offer() para adicionar um item para uma fila. A diferença entre add() e Offer() é que Offer() retorna false se a fila estiver cheia, enquanto add ( ) lança uma exceção.

Suponha que queremos adicionar as tabelas # 22 e # 17 nessa ordem à nossa pilha porque eles acabaram de pedir o almoço. Podemos fazer isso usando este código:

Nosso código retorna:

Quebrar do nosso exemplo Descendente. Primeiro, importamos a classe PriorityQueue, que usaremos posteriormente em nosso código. Então, declaramos uma classe chamada AddCustomer, que armazena nosso código para este exemplo. É assim que o código em nossa classe funciona:

  1. Usamos new PriorityQueue <> (); para criar uma fila de prioridade chamada commands .
  2. Usamos add() para adicionar a tabela # 22 à nossa pilha
  3. Imprimimos a palavra commands:. seguida pelo conteúdo de nossa pilha no console.
  4. Usamos offer() para adicionar a tabela nº 17 à nossa pilha.
  5. Imprimimos no console o termo comandos atualizados . seguido pelo conteúdo revisado de nossa pilha
  6. 22 aparece primeiro em nossa pilha e, portanto, será o primeiro a sair quando removermos um elemento. Em outras palavras, o array # 22 está no topo da nossa pilha. A Tabela # 17 é armazenada na segunda posição em nossa pilha. Lembre-se - você, as filas de espera prioritária são classificadas na ordem FIFO

Nosso código retorna um array com nossos comandos originais, então um array com nossos comandos atualizados.

remover item de PriorityQueue

Existem dois métodos que podem ser usados para remover um item de um PriorityQueue:

Suponha que nosso subchefe tenha processado o comando # 17 e queira removê-lo da pilha. Depois que o pedido foi processado, nosso chef se preparou para nº 22 e deseja remover da pilha.

A referência 17 está na posição 2 de nossa pilha e o pedido nº 22 i s na posição 1. Queremos eliminar esses itens nessa ordem. Poderíamos usar este código para remover os comandos:

Nosso código retorna:

Deixe nosso código pausar. Primeiro, usamos delete() para excluir o pedido na posição 2 em nossa pilha. Este comando # 17 deletou

nosso código imprimiu uma mensagem dizendo:.? O pedido nº 17 foi excluído seguido pelo resultado do método delete(). delete() removeu com sucesso # 17 de nossa pilha, o método retorna true

Em seguida, usamos poll () para remover o item superior de nossa pilha. Neste caso não foi ordem. 22. poll() excluiu o pedido ne. 22 e retornou o item excluído. Após a remoção do item, imprimimos a mensagem Comandante # [número do pedido removido] foi removido da fila . no console.

Obter Item

O método peek() é usado para recuperar o cabeçalho de um item de fila (o primeiro item na fila ). Suponha que queremos saber o valor do próximo pedido em nossa pilha porque nosso sous chef está pronto para aceitar um novo pedido.

Poderíamos usar este código para recuperar o número da mesa do cliente que está ao lado a linha:

Nosso código retorna:

o primeiro elemento em nossa pilha é 22, então quando usamos o peek(), nosso programa retorna o valor 22 "última linha do nosso código , imprimimos uma mensagem que diz:. o pedido a ser processado é a tabela # [número do primeiro pedido na pilha], onde o primeiro número do pedido na pilha foi descoberto por peek().

A fila itera por prioridade

Muitas vezes, ao trabalhar com filas, você deseja iterar sobre os itens na fila de prioridade

p>

Para isso podemos usar o iterator(), que faz parte do pacote java.util.Iterator. Usamos o código <> iterator() , você deve primeiro importar o pacote Iterator usando este código:

Suponha que queremos imprimir uma lista de todos os itens em nossa fila de pedidos do restaurante para o console que poderíamos fazer usando este código:.

Nosso código retorna:

Em nosso código, primeiro adicionamos quatro valores ‚Äã‚Äãà nossa fila . Em seguida, usamos o iterator() para criar um iterador que podemos usar para examinar todos os itens em nossa fila de prioridade. Em seguida, criamos um while que passa por cada elemento em nosso iterador - para cada elemento na fila command - . E imprime o seguinte valor na fila <

h2> métodos adicionais PriorityQueue

Existem três outros métodos que são frequentemente usados com a classe PriorityQueue. São eles:

Nome do método descrição
tamanho () retorna o comprimento da fila .
toArray () converte a fila em um array.
contém (elementName) Procura um elemento na fila.

Conclusão

A classe PriorityQueue é usada em Java para implementar a interface de fila de espera. As filas usam a estrutura de dados FIFO, portanto, primeiro é o primeiro a sair.

Este tutorial mostrou os conceitos básicos de enfileiramento e filas de prioridade em Java. Também discutimos como criar uma fila e os principais métodos que você pode usar para recuperar itens e manipular uma fila .

Agora você tem as ferramentas necessárias para começar a usar a classe Java PriorityQueue como um profissional!

>

Shop

Learn programming in R: courses

$

Best Python online courses for 2022

$

Best laptop for Fortnite

$

Best laptop for Excel

$

Best laptop for Solidworks

$

Best laptop for Roblox

$

Best computer for crypto mining

$

Best laptop for Sims 4

$

Latest questions

NUMPYNUMPY

psycopg2: insert multiple rows with one query

12 answers

NUMPYNUMPY

How to convert Nonetype to int or string?

12 answers

NUMPYNUMPY

How to specify multiple return types using type-hints

12 answers

NUMPYNUMPY

Javascript Error: IPython is not defined in JupyterLab

12 answers

News


Wiki

Python OpenCV | cv2.putText () method

numpy.arctan2 () in Python

Python | os.path.realpath () method

Python OpenCV | cv2.circle () method

Python OpenCV cv2.cvtColor () method

Python - Move item to the end of the list

time.perf_counter () function in Python

Check if one list is a subset of another in Python

Python os.path.join () method