DEV Community

FUNDAMENTOS JAVA
FUNDAMENTOS JAVA

Posted on

Tente Isto 5-1: Classifique um array

Já que um array unidimensional organiza os dados em uma lista linear que pode ser indexada, é a estrutura de dados perfeita para classificações. Nesse projeto, você aprenderá uma maneira simples de classificar um array. Como deve saber, há vários algoritmos de classificação. Há a classificação rápida, a classificação por troca e a classificação de shell, para citar apenas três. No entanto, a mais conhecida, simples e fácil de entender se chama classificação por bolha. Embora a classificação por bolha não seja muito eficiente – na verdade, seu desempenho é inaceitável para a classificação de arrays grandes – ela pode ser usada de maneira eficaz na classificação de arrays pequenos.

1 Crie um arquivo chamado Bubble.java.
2 A classificação por bolha obtém seu nome da maneira como executa a operação de classificação. Ela usa a comparação repetida e, se necessário, a troca de elementos adjacentes do array. Nesse processo, valores pequenos se movem em direção a uma extremidade e os maiores em direção à outra. O processo é conceitualmente semelhante a bolhas encontrando seu nível em um tanque de água. A classificação por bolha funciona percorrendo várias vezes o array e trocando os elementos que estiverem fora do lugar quando preciso. O número de passagens necessárias para assegurar que o array esteja classificado é igual a um menos o número de elementos do array. Aqui está o código que forma a base da classificação por bolha. O array que está sendo classificado se chama nums.

Image description

Observe que a classificação se baseia em dois laços for. O laço interno verifica os elementos adjacentes do array, procurando elementos fora de ordem. Quando um par de elementos fora de ordem é encontrado, os dois elementos são trocados. A cada passagem, o menor dos elementos restantes se move para o local apropriado. O laço externo faz esse processo se repetir até o array inteiro
ser classificado.

Sentry image

Hands-on debugging session: instrument, monitor, and fix

Join Lazar for a hands-on session where you’ll build it, break it, debug it, and fix it. You’ll set up Sentry, track errors, use Session Replay and Tracing, and leverage some good ol’ AI to find and fix issues fast.

RSVP here →

Top comments (0)

A Workflow Copilot. Tailored to You.

Pieces.app image

Our desktop app, with its intelligent copilot, streamlines coding by generating snippets, extracting code from screenshots, and accelerating problem-solving.

Read the docs

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay