{ for (int i = 0; i< tam ; i++){ if (vec[i] == ps) return i; } return -1; } Bsqueda binaria int busBin(const int vec[], int tam, int ps) { int haut = tam-1; int bas = 0; int centre; while (bas <= haut) { centre = (haut + bas)/2; if (vec[centre] == ps) return centre; else if (ps < vec[centre]) haut=centre-1; else bas=centre+1; } return -1; Burbuja void burbuja(int vec[], int tam) { for (int i = 0; i<tam-1 ; i++) for (int j = 0; j<tam-1 ; j++) if(vec[j] < vec[j+1]) cambio(vec[j],vec[j+1]); } void cambio(int &a, int &b) { int tmp = b; b = a; a = tmp; }
Insercin void insercion (int vec[] , int n) { int aux=0; int j=0; for (int i=0; i<n; i++) { aux = vec[i]; for (j=i-1; j>=0 && A[j]>aux; j--) vec[j+1] = A[j]; vec[j+1] = aux; } } Mezcla void melange (int *v, int i, int f) { if(i!=f) { int m = (i+f)/2; melange (v, i, m); melange (v, m+1, f); melenge1(v, i, m, f); } }
void melenge1(int *v, int i, int m, int f) { int *aux = new int[m-i+1]; for(int j=i; j<=m; j++) aux[j-i] = v[j];
int c1=0, c2=m+1; for(int j=i; j<=f; j++) { if(aux[c1] < v[c2]) { v[j] = aux[c1++]; if(c1==m-i+1) for(int k=c2; k<=f; k++) v[++j] = v[k]; } else { v[j] = v[c2++]; if(c2==f+1) for(int k=c1; k<=m-i; k++) v[++j] = aux[k]; } } } Seleccin void selection(int B[], int n) { for (int i = 0; i <n - 1; i++) { int min = i; for (int j = i + 1; j < n; j++) { if (B[j] < B[min]) { min = j; } } if (i != min) { int aux= B[i]; B[i] = B[min]; B[min] = aux; } } } Cuadros mgicos #include <stdio.h> #include <stdlib.h> #include <conio.h>
/*limitar rango ( limita los valores de x al rango [0, N] )*/ #define lr( f, N ) ( (f)<0 ? N+(f)%N : ( (f)>=N ? (f)%N : (f) ) )
int sumaDiagonal(matriz[][10]) { int f, c, suma =0; for(f=0; f <10; f++) for(c=0; c <10; c++) { if(f==c) suma=suma + matriz[f][c]; } return suma; } Palindrome #include <stdio.h> #include <stdlib.h> #include <string.h> #include <ctype.h>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int main(int argc, char *argv[]) { puts("____________________________________________________________\n"); puts("ESTE PROGRAMA DETERMINA SI UNA FRASE O PALABRA ES PALINDROMO "); puts("____________________________________________________________\n"); char texto[256]; int primero=0; int ultimo; int tama; int palin=1;
printf("ingrese un frase:\n"); scanf("%[^\r\n]",&texto); tama=strlen(texto); ultimo=tama-1; while(palin&&primero<tama&&ultimo>=0){