Manipulando árvores.
Publicado por sérgio 02/03/2007
[ Hits: 5.768 ]
Esse script serve para manipulação básica de árvores, com operações como criar nó, criar a árvore em si, inserir valores e achar valores na árvore.
#include <stdio.h> #include <stdlib.h> #include <string.h> typedef struct arv{ int chave; struct arv *esq, *dir, *pai; }Tarv; Tarv *cn(){ Tarv *p; p=malloc(sizeof(Tarv)); p->esq=NULL; p->dir=NULL; return p; } Tarv *ca(int x){ Tarv *p; p=cn(); p->chave=x; return p; } int *ins(int x,Tarv *p){ Tarv *q; q=ca(x); if(x<p->chave){ if (p->esq!=NULL){ printf("Nao foi possivel fazer a insersaoa\n"); } else{ p->esq=q; printf("a"); p=p->esq; } } else{ if (x>p->chave){ if(p->dir!=NULL){ printf("Nao foi possivel fazer a insersaob\n"); } else{ p->dir=q; printf("b\n"); p=p->dir; } } else{ printf("O valor que voce colocou eh igual ao valor da raiz, vtnc\n"); } } } int acha(Tarv *p,int x){ Tarv *z; int t; z=p; while(z->chave!=NULL){ if (z->chave==x){ printf("Esse numero existe na arvore!"); return 0; } else{ if(z->chave>x){ z=z->esq; } else{ z=z->dir; } } } } int altura(Tarv *r,int x){ int aux=0; while(r->chave!=x){ if(r->chave<x){ r=r->dir; aux++; } else{ r=r->esq; aux++; } printf("%d\n",aux); } } int main(){ Tarv *p; int abc; p=malloc(sizeof(Tarv)); p->esq=NULL; p->dir=NULL; int a=2,b=3,c=4; p=ca(2); ins(1,p); ins(3,p); acha(p,1); abc=primeira(p); altura(p,1); }
Função que converte números decimais em binários
Retirar ocorrências de uma substring dentro de uma string
CPU e memória em C no GNU/Linux
Nenhum coment�rio foi encontrado.
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Atualizar Debian Online de uma Versão para outra
Dica para encontrar diversos jogos Indies criativos
Instalando Discord no Debian 13
Instalar driver Nvidia no Debian 13
Redimensionando, espelhando, convertendo e rotacionando imagens com script
Dificuldade com Ocs 2.12.3 no Debian 13 com Apache2 - Can't load ... (0)
paginação dos favoritos não funciona no vivaolinux[BU... (4)
Driver da nvidia e desempenho em jogos (2)
A escola é altamente ineficiente e ineficaz! (13)
Sincronização Horario Estação de trabalho máquinas domínio com samba N... (2)