ordenado(struct noArvore *ptr) { if(ptr!=NULL) { ordenado(ptr->esquerda); printf("%d ",ptr->info); ordenado(ptr->direita); } }/*Fim do ordenado()*/
int main() { int i, *src, n; printf("Introduza o número de numeros: "); scanf("%d", &n); if (n > 100) { printf("So sao permitidas sequencias ate 100 numeros"); n = 100; } src = (int *) malloc(sizeof(int) * n); for (i = 0; i < n; i++) { printf("Introduza o %d numero: ", i + 1); scanf("%d", &src[i]); } if (ordenado(src, n)) { printf("\nO vetor esta ordenado!\nElementos do vetor por ordem decrescente\n{"); for (i = n - 1; i > 0; i--) { printf("%d,", src[i]); } printf("%d}\n", src[i]); } else { printf("\nO vetor não esta ordenado\n"); } return 0; }
void bogosort(int *vetor) { int i=0; while(!ordenado(vetor)) { embaralha(vetor); i++; } printf("O vetor foi ordenado na %d tentativa \n", i); }
main() { bool ht_inc; int info ; int escolha; struct noArvore *raiz = (struct noArvore *)malloc(sizeof(struct noArvore)); raiz = NULL; while(1) { printf("Arvore AVL\n"); printf("Menu: \n"); printf("1.Insere\n"); printf("2.Mostrar\n"); printf("3.Sair\n"); printf("Entre com sua escolha: "); scanf("%d",&escolha); switch(escolha) { case 1: printf("Entre com o numero a ser inserido: "); scanf("%d", &info); if( procura(raiz,info) == NULL ) raiz = insere(info, raiz, &ht_inc); else printf("\nValor duplicado ignorado.\n"); break; case 2: if(raiz==NULL) { printf("\nArvore vazia.\n"); continue; } printf("Arvore balanceada: \n"); mostrar(raiz, 1); printf("\n\n"); printf("Em ordem: "); ordenado(raiz); printf("\n"); break; case 3: exit(1); default: printf("Escolha invalida\n"); }/*Final do menu*/ }/*Final do enquanto*/ }/*Fim do menu()*/
//--------------------------------------main---------------------------------- int main(){ int i, N; int opcion, error = 0; printf("Ingrese cantidad de elementos a ordenar: "); scanf("%i", &N); int array[N], array_aux[N]; time_t inicio, final; //-----------------------------iniciacion del array-------------------------- while (!error) { printf("\n1) Ordenado\n2) Ordenado Inverso\n3) Desordenado\nIngrese su opcion: "); scanf("%i", &opcion); switch (opcion) { case 1: ordenado(array, N); error = 1; break; case 2: desordenado(array, N); error = 1; break; case 3: ordenadoInverso(array, N); error = 1; break; default: printf("\nOpcion no disponible\n"); break; } } // Si se prueban todos los algoritmos a la vez, descomentar esta linea. // Copia el array en array aux para utilizar el mismo array en cada prueba. memcpy(array_aux, array, N*sizeof(int)); ////-----------------------------Algoritmos Estables---------------------------- inicio = clock(); burbuja(array, N); final = clock();
void submenu(int value, int data[]) { char sino; do { clrscr(); printf("\n ----IMPRESION DE LOS DATOS----"); printf("\n\n '1'-- Mostrar los datos ingresados"); printf("\n\n '2'-- Ascendente"); printf("\n\n '3'-- Descendente"); printf("\n\n '4'-- maximo, minimo, suma, promedio, varianza"); printf("\n\n Ingresa 'S' para salir"); printf("\n\n Ingresa una opcion: "); scanf("%c", &sino); switch(sino) { case '1': mostrar(value, data); break; case '2': ordenado(value, data); break; case '3': inverso(value, data); break; case '4': otros(value, data); break; case 'S': sino = 's'; }//switch(sino) }while(sino != 's'); }//void submenu(int, int[])