Ir para conteúdo
Fórum Script Brasil
  • 0

Ordenação Pilha C++


Thiagoweb10

Pergunta

Tenho um codigo que faz a ordenação dos dados vindo de um txt em bolha gostaria de saber com faço para organizar em pilha?

segue o codigo

private: System::Void OrganizaBolha()
         {
             
             Registro *registros = new Registro[dataGridView1->Rows->Count];

             
             for(int i = 0; i < dataGridView1->Rows->Count; i++)
             {
                 Registro reg;
                 
                 String^ sCodigo = dataGridView1->Rows[i]->Cells[0]->Value->ToString();
                 String^ sNome = dataGridView1->Rows[i]->Cells[1]->Value->ToString();
                 String^ sData = dataGridView1->Rows[i]->Cells[2]->Value->ToString();

                 for(int j = 0; j < 12; j++)
                 {
                     reg.Codigo[j] = sCodigo[j];
                 }

                 for(int j = 0; j < 44; j++)
                 {
                     reg.Nome[j] = sNome[j];
                 }

                 for(int j = 0; j < 5; j++)
                 {
                     reg.Data[j] = sData[j];
                 }

                 registros[i] = reg;
             }             

             

             Registro TMPs; 

            for(int i = 0; i < dataGridView1->Rows->Count; i++) { 

                for(int j = 0; j < dataGridView1->Rows->Count - i - 1; j++) { 

                    if (strcmp(registros[j].Codigo, registros[j + 1].Codigo) > 0) { 
                        TMPs = registros[j + 1]; 
                        registros[j + 1] = registros[j]; 
                        registros[j] = TMPs;
                    }
                }
            }

            int qtd = dataGridView1->Rows->Count;

            dataGridView1->Rows->Clear();
            
            array<String ^> ^ ColVals = gcnew array<String ^>(3);

            
            for(int i = 0; i < qtd; i++) {

                String^ sCodigo; 
                sCodigo = ""; 
                for(int Pos = 0; Pos < 12; Pos++) {
                    wchar_t Letra = registros[i].Codigo[Pos]; 
                    sCodigo += Letra;
                }

                String^ sNome; 
                sNome = ""; 
                for(int Pos = 0; Pos < 44; Pos++){ 
                    wchar_t Letra = registros[i].Nome[Pos]; 
                    sNome += Letra;
                }

                String^ sData;
                sData = ""; 
                for(int Pos = 0; Pos < 5; Pos++) {
                    wchar_t Letra = registros[i].Data[Pos];
                    sData += Letra;
                }

                ColVals[0] = sCodigo;
                ColVals[1] = sNome; 
                ColVals[2] = sData;

                dataGridView1->Rows->Add(ColVals);
            }
         }

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...