Quick actions

cmd+k|ctrl+k

Navigation

Languages

bubble sort + binary search

Snippet info

Language

C

Visibility

public

Author

rodrigogons

Created

2017-08-26T00:05:04Z

Updated

2017-08-26T00:40:35Z

#include <stdio.h>
#define TAM 10

void showList(int *l){
    for(int i = 0; i < TAM; i++) {
       
        if(i != TAM-1) printf("%d - ", l[i]); 
        else printf("%d\n", l[i]);
    }
}

void bubbleSort(int *vet, int tam) {
    int i, j, aux;
    for (i = 0 ; i < ( tam - 1 ); i++)
  {
    for (j = 0 ; j < tam - i - 1; j++)
    {
      if (vet[j] > vet[j+1])
      {
        aux = vet[j];
        vet[j] = vet[j+1];
        vet[j+1] = aux;
      }
    }
  }
}

int binarySearch(int x, int n, int *v) {
    int e, m, d;
    e = -1; d = n;
    while (e < d - 1) {
    m = (e + d)/2;
    if (v[m] < x) e = m;
    else d = m;
    }
    return d;
}

int main(void) {
    int lista[TAM] = {9, 34, 46, 16, 48, 36, 37, 7, 4, 17}; /* lista test */
    int localiza = 37, posi;
    
    printf("Lista utilizada:\n");
    showList(lista);
    
    printf("\nLista ordenada:\n");
    bubbleSort(lista, TAM);
    showList(lista);
    
    posi = binarySearch(localiza, TAM, lista);
    printf("\nvalor %d está na posição %d", localiza, posi);
  
    return 0;
}
INFO