Como classificar matrizes em C Programming

Com a programação C, os computadores são projetados para realizar rapidamente e alegremente tarefas chatas, como ordenar uma matriz. Na verdade, eles adoram fazer tanto que # 147-the sort # 148- é um conceito básico do computador sobre o qual muitas teorias e algoritmos foram gravados. É um tema snoozer real, se você não é um Mentat ou um nativo do planeta Vulcan.

O tipo mais simples é o Tipo de bolha, que não só é fácil de explicar e compreender, mas também tem um nome divertido. É também melhor mostra a filosofia-ordenação matriz básica, que é a troca de valores entre dois elementos.

Suponha que você está classificando uma matriz para que os menores valores estão listados em primeiro lugar. Se array [2] contém o valor 20, e array [3] contém o valor 5, estes dois elementos teriam de trocar valores. Para que isso aconteça, você usa uma variável temporária de uma série de declarações que se parece com isso:

temp = array [2] - / * Desconto de 20 em Temp * / array [2] = array [3] - / * loja 5 em array [2] * / array [3] = temp- / * Coloque 20 em array [ 3] * /

Em uma espécie de bolha, cada elemento da matriz é comparado com todos os outros elementos de matriz em uma seqüência organizada. Quando um valor é maior (ou menor) do que o outro, os valores são trocados. Caso contrário, a comparação continua, se arrastando por cada permutação possível de comparações na matriz. A Bubble Sort demonstra.

A bubble sort

#include #define SIZE 6int main () {bolha int [] = {95, 60, 6, 87, 50, 24} -int interior, exterior, temp, x - / * Apresentar matriz original * / puts ( "Matriz Original : ") - para (x = 0 x-bolha [interior]) {temp = bolha [externa] -bubble [externa] = bolha [interior] -bubble [interior] = Temp -}}} / * Mostrar matriz classificada * / puts ( "array ordenado:") - para (x = 0-x

A Bubble Sort é longa, mas é facilmente dividido em três partes, cada um dirigido por um comentário:

  • Linhas 10 a 14 exibir a matriz original.

  • Linhas 16 a 28 classificar a matriz.

  • Linhas 30 a 34 exibir a matriz classificada (duplicando linhas 10 a 14).

O tamanho constante é definida em Linha 3. Esta directiva permite alterar facilmente o tamanho da matriz no caso de você reutilizar este código novamente mais tarde (e você).

A espécie em si envolve aninhada para loops: um loop externo e um circuito interno. O loop externo marchas através de toda a matriz, um passo de cada vez. O circuito interno leva o seu elemento posição um maior na matriz e desce através de cada valor individualmente.

Exercício 1: Copie o código-fonte do A Sort bolha em seu editor e criar um novo projeto, ex1213. Construir e executar.

exercício 2: Usando o código de fonte a partir de uma bolha Ordenar como um ponto de partida, criar um programa que gera números aleatórios 40 na gama de 1 a 100 e armazena esses valores em uma matriz. Exibir essa matriz. Classificar essa matriz. Exibir os resultados.

exercício 3: Modificar o código fonte do Exercício 2, de modo que os números são classificados em ordem inversa, do maior ao menor.

exercício 4: Escreva um programa que classifica o texto na seqüência de 21 caracteres # 147-C Programar é divertido # 148!;

menu