Ir ao conteúdo
  • Cadastre-se

LosinChances

Membros Juniores
  • Total de itens

    2
  • Registro em

  • Última visita

  • Qualificações

    N/D
  1. Olá, gostaria de ajuda nesse codigo em C, pois nao consigo pensar em uma resoluçao. Peço que coloquem o maximo de comentarios possiveis para que assim eu consiga entende-lo Algoritmo Merge Sort com uso de threads O uso de threads permite emular o conceito de paralelismo em um processador multicore. Assim, para experimentarmos esse conceito implemente o algoritmo merge sort usando a biblioteca de threads presente na linguagem C, considerando as seguintes variantes: 1.Vetor dividido em 2 partes, sem usar threads 2.Vetor dividido em 2 partes, usando 2 threads 3.Vetor dividido em 4 partes, sem usar threads 4.Vetor dividido em 4 partes, usando 2 threads 5.Vetor dividido em 4 partes, usando 4 threads 6.Vetor dividido em 8 partes, sem usar threads 7.Vetor dividido em 8 partes, usando 2 threads 8.Vetor dividido em 8 partes, usando 4 threads 9.Vetor dividido em 8 partes, usando 8 threads Em todos os casos o vetor original deve ser criado usando a função do terceiro projeto, sendo um vetor de 200 mil inteiros. Em cada uma das partes do vetor original deve ser aplicado o algoritmo insertion sort antes de se começar a fazer os merges. A entrega do programa deve incluir o código fonte e um pequeno relato dos resultados obtidos (1 ou 2 páginas).
  2. Olá pessoal, gostaria de ajuda nesse trabalho em C. Peço por favor que enviei o codigo pois nao consigo prosseguir nessa resoluçao Números inteiros são representados corretamente até o valor de 2.147.483.647, que é o limite de representação atual de inteiros. Considerando isso, se formos tratar de inteiros maiores que esse valor temos duas opções. Uma é representar como float/double, porém isso nem sempre é desejável. A outra forma é criando um tipo de dados que concatene dois inteiros, de modo a formar um inteiro muito grande. Isso equivale ao que conhecemos como unidades, dezenas, centenas, milhares, etc. Ou seja, podemos pensar que um número inteiro grande é a combinação de dois inteiros, um representando a "parte baixa" (no caso limitada em 1.000.000.0000) e o outro representando a "parte alta". Assim, o valor 100 bilhões seria representado por um inteiro 100 e por um inteiro 1.000.000.000. Já o valor limite indicado acima seria representado por 2 e por 147.483.647. Para fazer a representação indicada (esqueça das funções que manipulam esses valores), deve se declarar a seguinte estrutura typedef struct biggo { int high; int low; } BigInt; Considerando então esse novo tipo de dados, implemente o algoritmo quicksort para ordenar um vetor de 100 mil posições BigInt. Lembre-se nesse caso que a ordenação deve cuidar para que posições de mesmo valor para high sejam ordenadas pelo seu valor de low. Para gerar esse vetor use como base a função do terceiro projeto, porém agora faça a atribuição aos elementos do vetor usando rand%1000000001 Para efeito de comparação, use também o algoritmo insertion sort (aplicando um de cada vez). A entrega do programa deve incluir o código fonte e um pequeno relato dos resultados obtidos (1 ou 2 páginas).

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...