Este artigo descreve o método de implementação de classificação de paridade da classificação do Java Exchange. Compartilhe para sua referência. Os detalhes são os seguintes:
O tipo de paridade, ou tipo de transposição de paridade, ou tipo de tijolo, é um algoritmo de classificação relativamente simples que foi originalmente inventado para computação paralela com interconexões locais. Este é um tipo comparativo semelhante às características da classificação de bolhas.
Nesse algoritmo, comparando os pares numéricos adjacentes (ímpares e unposos) na matriz, se o par ímpar está na ordem errada (a primeira é maior que a segunda), troca. Repita a próxima etapa, mas para todos os pares numéricos (uniformes) posicionam. Continue assim alternadamente.
Classificação de matrizes de processador
Na classificação paralela da computação, cada processador processa um valor correspondente a ele e possui apenas interconexões locais com os vizinhos esquerdo e direito. Todos os processadores podem comparar e trocar operações com os vizinhos ao mesmo tempo, alternadamente em uma ordem ímpar e até mesmo. O algoritmo foi originalmente publicado por Habermann em 1972 e demonstrou sua eficiência no processamento paralelo.
O algoritmo pode ser efetivamente estendido aos casos em que cada processador possui vários valores. No algoritmo de partição de paridade de Baudetstevenson, cada processador classifica os subarrans que possui em cada etapa e, em seguida, realiza uma partição de mesclagem ou transposição se fundindo com os vizinhos.
Paridade do tasta e até mesmo classificação
A classificação da paridade do tastro é um algoritmo de classificação relevante, mas mais eficiente, que usa operações de troca de comparação e troca perfeita.
A abordagem do Batcher é muito eficiente em processadores de computação paralela com interconexão extensa.
Pior complexidade do tempo/teta (n^2)
O gráfico dinâmico de classificação de paridade é o seguinte:
Implementação de código:
pacote com.baobaotao.test; : pré "> </span> * @param Array <span style =" white-space: pré "> </span> */public static void Batchersort (int [] array) {int length = Array.length; sinalizador booleano = true; , i+1); , I+1); a ser trocado b * @param c o número a ser trocado c */ public static void swap (int [] a, int b, int c) {int temp = 0; ]> a [c]) {temp = a [b]; PrintArr (int [] Array) {for (int c: Array) {System.out.print (C + ""); [] Número = {11,95,45,15,78,84,51,24,12};Análise de saída:
11 45 15 95 51 78 12 84 2411 15 45 51 12 95 24 78 8411 15 12 45 24 51 78 95 8411 12 15 24 45 51 78 84 95
Espero que este artigo seja útil para a programação Java de todos.