2° Estructuras:
- Lineales (listas, colas, bicolas, pilas...)
- No Lineales (árboles)
3° Estructuras Recursivas
4° Estructuras Relacionales
5° Ordenamiento y Búsqueda
6° Mapa Conceptual
public class Test
{
public static void main(String args[])
{
CArbolBinarioDeBusqueda arbolbb=new CArbolBinarioDeBusqueda();
String nombre;
double nota;
int i=0,cod;
System.out.println("Introducir datos. Finalizar con Ctrl+z.");
System.out.println("nombre: ");
while((nombre=Leer.dato())!=null)
{
System.out.print("nota: ");
nota=Leer.datoDouble();
cod=arbolbb.insertar(new CDatos(nombre,nota));
if(cod==CArbolBinarioDeBusqueda.YA_EXISTE)
{
CDatos datos=(CDatos)arbolbb.buscar(new CDatos(nombre,nota));
if(nota>=0)
datos.asignarNota(nota);
else
{
if(arbolbb.borrar(new CDatos(nombre,nota))==null)
System.out.println("nodo borrado porque no existe");
else
System.out.println("nodo borrado");
}
}
System.out.print("nombre: ");
}
System.out.println("\n");
System.out.println("\nArbolInorden: ");
arbolbb.visitarInorden();
System.out.println("\nArbol posorden: ");
arbolbb.visitarPosorden();
System.out.println("\nArbol preorden: ");
arbolbb.visitarPreorden();
}
}
SeudoCodigo Recorrido Arbol
Características:
Operaciones árboles
"recorrido inorden es el que ordena un árbol"
"árbol de busqueda organizado AVAL"
"árbol degenerado: que queda todo hacia un solo lado"
IMPLEMENTACIÓN DE ÁRBOLES BINARIOS
Árboles multicaminos
Características
ÁRBOL B+
características:
operaciones:
public class factorial {
private static inout io = new inout();
public static void main (String args[]) throws Exception
{
int a,m,p;a=io.readint();m=factorialrec(a);p=factorial2(a);io.writeln(m);io.writeln(p);
}
public static int factorialrec(int x)
{
int aux;aux=1;if (x==0)aux=1;else aux=aux*factorialrec(x-1);return aux;
}
public static int factorial2(int x)
{
int i,f;i=0;f=1;while (i != x)
{
i=i+1;f=f*i;}
return f;
}
}
public class Fibonacci {
public static long fib(int n)
{
if (n <= 1) return n;
else
return fib(n-1) + fib(n-2);
}
public static void main(String[] args) {
int N = Integer.parseInt(args[0]);
for (int i = 1; i <= N; i++)
System.out.println(i + ": " + fib(i));
}
}
isEmpty: determina si la lista esta vacia.
Size: determina en número de elementos en la lista.