Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- struct arvore {
- struct no *raiz;
- };
- struct no {
- struct no *esq;
- int valor;
- struct no *dir;
- };
- struct no* inserir(struct no *noAtual, int valor) {
- if (noAtual == NULL) {
- struct no *novoNo = malloc(sizeof(struct no));
- novoNo->valor = valor;
- novoNo->esq = NULL;
- novoNo->dir = NULL;
- return novoNo;
- } else {
- //Decidir o que se vou para esquerda ou direita
- if (valor < noAtual->valor)
- noAtual->esq = inserir(noAtual->esq, valor);
- else
- noAtual->dir = inserir(noAtual->dir, valor);
- }
- }
- int main() {
- struct arvore *arvore = malloc(sizeof(struct arvore));
- arvore->raiz = NULL;
- arvore->raiz = inserir(arvore->raiz, 10);
- arvore->raiz = inserir(arvore->raiz, 7);
- arvore->raiz = inserir(arvore->raiz, 15);
- arvore->raiz = inserir(arvore->raiz, 14);
- printf("%d", arvore->raiz->dir->esq->valor);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement