Estrutura de dados

2842 palavras 12 páginas
Estrutura de Dados

Questão 1

class TreeNode{

TreeNode left; int data; TreeNode right;

public TreeNode(int d) { data = d; left = right = null; }

public synchronized void insert(int d) { if (left == null) left = new TreeNode(d); else { if (right == null) right = new TreeNode(d); else { if((left.left != null && left.right != null) && (right.left == null || right.right == null)) right.insert(d); else left.insert(d); } } }
}

class Tree{ private TreeNode root;

public Tree() { root = null; }

public synchronized void insertNode (int d){ if (root == null) root = new TreeNode(d); else root.insert(d); }

public synchronized void preorderTraversal() { preorderHelper(root); }

private void preorderHelper(TreeNode node) { if (node == null) return;

System.out.print(node.data + " "); preorderHelper(node.left); preorderHelper(node.right); }
}

import java.util.Scanner; public class TreeBinary{ public static void main(String args[]) { Tree tree = new Tree(); int intVal; String cont = " "; Scanner sc = new Scanner(System.in); System.out.println("Digite um valor a inserir ou '0' para encerrar: "); intVal = sc.nextInt(); cont = Integer.toString(intVal); if(intVal == 0){ System.out.println("Árvore está vazia."); return; }else{ while(intVal != 0){ System.out.print(cont+" "); tree.insertNode(intVal); intVal = sc.nextInt(); cont = cont + " " + intVal; } }

System.out.println("\nPercorrendo a Árvore em ordem"); tree.preorderTraversal(); System.out.println();
}
}

Relacionados

  • Estrutura de Dados
    294 palavras | 2 páginas
  • Estrutura de dados
    1410 palavras | 6 páginas
  • estrutura de dados
    308 palavras | 2 páginas
  • Estrutura de dados
    1209 palavras | 5 páginas
  • Estrutura de dados
    365 palavras | 2 páginas
  • estrutura de dados
    940 palavras | 4 páginas
  • Estrutura de dados
    1051 palavras | 5 páginas
  • Estrutura de dados
    45366 palavras | 182 páginas
  • Estrutura de Dados
    16294 palavras | 66 páginas
  • Estrutura de Dados
    1559 palavras | 7 páginas