Exemplo n.º 1
0
        /*
         *
         * Métodos de ordenação e controle dos elementos visuais.
         *
         *  */

        private void ordenar()
        {
            if (comboAlgoritmo.Text.Equals("Bubble Sort (BBST)")) //Bubble Sort
            {
                if (comboCampo.Text.Equals("código da ocorrência"))
                {
                    Stopwatch sw = new Stopwatch();

                    List <DadosOcorrencia> lista_ordenada;

                    sw.Start();
                    lista_ordenada = OrdenaDados.bubbleSort_codigo_ocorrencia(this.lista_dados_ocorrencias, (!checkDecrescente.Checked));
                    sw.Stop();

                    this.lista_ordenada = lista_ordenada;

                    Console.WriteLine("time: " + sw.Elapsed);

                    preencherTempoExecucao("Bubble Sort (BBST)", lista_ordenada.Count, "código da ocorrência", checkDecrescente.Checked, sw.ElapsedMilliseconds);
                    preencherGridListaOcorrencias(lista_ordenada);
                }//if
                if (comboCampo.Text.Equals("localidade"))
                {
                    Stopwatch sw = new Stopwatch();

                    List <DadosOcorrencia> lista_ordenada;

                    sw.Start();
                    lista_ordenada = OrdenaDados.bubbleSort_localidade(this.lista_dados_ocorrencias, (!checkDecrescente.Checked));
                    sw.Stop();

                    this.lista_ordenada = lista_ordenada;

                    Console.WriteLine("time: " + sw.Elapsed);

                    preencherTempoExecucao("Bubble Sort (BBST)", lista_ordenada.Count, "localidade", checkDecrescente.Checked, sw.ElapsedMilliseconds);
                    preencherGridListaOcorrencias(lista_ordenada);
                }
            }//if
            if (comboAlgoritmo.Text.Equals("Insertion Sort com Busca Linear (ISBL)")) //Insertion Sort
            {
                if (comboCampo.Text.Equals("código da ocorrência"))
                {
                    Stopwatch sw = new Stopwatch();

                    sw.Start();
                    List <DadosOcorrencia> lista_ordenada = OrdenaDados.insertionSort_codigo_ocorrencia(this.lista_dados_ocorrencias, (!checkDecrescente.Checked));
                    sw.Stop();

                    this.lista_ordenada = lista_ordenada;

                    Console.WriteLine("time: " + sw.Elapsed);

                    preencherTempoExecucao("Insertion Sort com Busca Linear (ISBL)", lista_ordenada.Count, "código da ocorrência", checkDecrescente.Checked, sw.ElapsedMilliseconds);
                    preencherGridListaOcorrencias(lista_ordenada);
                }
                if (comboCampo.Text.Equals("localidade"))
                {
                    Stopwatch sw = new Stopwatch();

                    sw.Start();
                    List <DadosOcorrencia> lista_ordenada = OrdenaDados.insertionSort_localidade(this.lista_dados_ocorrencias, (!checkDecrescente.Checked));
                    sw.Stop();

                    this.lista_ordenada = lista_ordenada;

                    Console.WriteLine("time: " + sw.Elapsed);

                    preencherTempoExecucao("Insertion Sort com Busca Linear (ISBL)", lista_ordenada.Count, "localidade", checkDecrescente.Checked, sw.ElapsedMilliseconds);
                    preencherGridListaOcorrencias(lista_ordenada);
                }
            } //if
            if (comboAlgoritmo.Text.Equals("Quick Sort Randomizado (QSRM)")) //Quick Sort
            {
                if (comboCampo.Text.Equals("código da ocorrência"))
                {
                    Stopwatch sw = new Stopwatch();

                    sw.Start();
                    List <DadosOcorrencia> lista_ordenada = OrdenaDados.QSRM_Ocorrencia(this.lista_dados_ocorrencias, (!checkDecrescente.Checked));
                    sw.Stop();

                    this.lista_ordenada = lista_ordenada;

                    Console.WriteLine("time: " + sw.Elapsed);

                    preencherTempoExecucao("Quick Sort Randomizado (QSRM)", lista_ordenada.Count, "código da ocorrência", checkDecrescente.Checked, sw.ElapsedMilliseconds);
                    preencherGridListaOcorrencias(lista_ordenada);
                }
                if (comboCampo.Text.Equals("localidade"))
                {
                    Stopwatch sw = new Stopwatch();

                    sw.Start();
                    List <DadosOcorrencia> lista_ordenada = OrdenaDados.QSRM_Localizacao(this.lista_dados_ocorrencias, (!checkDecrescente.Checked));
                    sw.Stop();

                    this.lista_ordenada = lista_ordenada;

                    Console.WriteLine("time: " + sw.Elapsed);

                    preencherTempoExecucao("Quick Sort Randomizado (QSRM)", lista_ordenada.Count, "localidade", checkDecrescente.Checked, sw.ElapsedMilliseconds);
                    preencherGridListaOcorrencias(lista_ordenada);
                } //if
            }     //if
            if (comboAlgoritmo.Text.Equals("Shell Sort (SHST)")) //Shell sort (apenas decrescente)
            {
                if (comboCampo.Text.Equals("código da ocorrência"))
                {
                    Stopwatch sw = new Stopwatch();

                    sw.Start();
                    List <DadosOcorrencia> lista_ordenada = OrdenaDados.ShellSort_codigo_ocorrencia(this.lista_dados_ocorrencias);
                    sw.Stop();

                    this.lista_ordenada = lista_ordenada;

                    Console.WriteLine("time: " + sw.Elapsed);

                    preencherTempoExecucao("Shell Sort (SHST)", lista_ordenada.Count, "código da ocorrência", checkDecrescente.Checked, sw.ElapsedMilliseconds);
                    preencherGridListaOcorrencias(lista_ordenada);
                }
                if (comboCampo.Text.Equals("localidade"))
                {
                    Stopwatch sw = new Stopwatch();

                    sw.Start();
                    List <DadosOcorrencia> lista_ordenada = OrdenaDados.ShellSort_localidade(this.lista_dados_ocorrencias);
                    sw.Stop();

                    this.lista_ordenada = lista_ordenada;

                    Console.WriteLine("time: " + sw.Elapsed);

                    preencherTempoExecucao("Shell Sort (SHST)", lista_ordenada.Count, "localidade", checkDecrescente.Checked, sw.ElapsedMilliseconds);
                    preencherGridListaOcorrencias(lista_ordenada);
                } //if
            }
            if (comboAlgoritmo.Text.Equals("Heap Sort (HPST)")) //Heap Sort (apenas decrescente)
            {
                if (comboCampo.Text.Equals("código da ocorrência"))
                {
                    Stopwatch sw = new Stopwatch();

                    sw.Start();
                    List <DadosOcorrencia> lista_ordenada = OrdenaDados.HeapsortOcorrencia(this.lista_dados_ocorrencias);
                    sw.Stop();

                    this.lista_ordenada = lista_ordenada;

                    Console.WriteLine("time: " + sw.Elapsed);

                    preencherTempoExecucao("Heap Sort (HPST)", lista_ordenada.Count, "código da ocorrência", checkDecrescente.Checked, sw.ElapsedMilliseconds);
                    preencherGridListaOcorrencias(lista_ordenada);
                }
                if (comboCampo.Text.Equals("localidade"))
                {
                    Stopwatch sw = new Stopwatch();

                    sw.Start();
                    List <DadosOcorrencia> lista_ordenada = OrdenaDados.HeapsortLocalizacao(this.lista_dados_ocorrencias);
                    sw.Stop();

                    this.lista_ordenada = lista_ordenada;

                    Console.WriteLine("time: " + sw.Elapsed);

                    preencherTempoExecucao("Heap Sort (HPST)", lista_ordenada.Count, "localidade", checkDecrescente.Checked, sw.ElapsedMilliseconds);
                    preencherGridListaOcorrencias(lista_ordenada);
                } //if
            }     //if
        }         //ordenar()