.

miércoles, 24 de abril de 2013

Nodos Simples en Java

Esta pequeña clase les facilitara el uso de nodos para sus programas es cuestion de implementar.


----------------------------------------------------------------------------------------------------------------------------------
public class Nodo{ 


public int dato; 

public Nodo next; 

public Nodo(int n){ 

dato=n; 

next=null; 





Public class Lista{ 

private Nodo start; // Primer nodo de la lista
/**
* Añade un nodo al final de la lista.
*/
public void add(int N){ 

Nodo aux=start;

// Si la lista esta completamente vacia
if(aux==null){ 
// Creamos el primer elemento
aux=new Nodo(N); 

}else{ 
// En caso contrario buscamos el ultimo y lo añadimos
while(aux.next!=null) aux=aux.next; 

aux.next=new Nodo(N); 




/**
* Borra el primer nodo cuyo dato coincida con el parametro N 
*/
public void remove(int N){ 

Nodo aux=start; 

// Comprobamos si es el primer nodo
if(aux.dato==N){ 
// Si lo es entonces hacemos que el primer nodo sea el segundo
start=aux.next; 

}else{ 
// Vamos saltando los nodos que no coincidan hasta 
// que encontremos uno o se acabe la lista
while(aux.next!=null && aux.next.dato!=N) 

aux=aux.next; 
// Si la lista no ha acabado
if(aux.next!=null){ 
// saltamos al siguiente
aux.next=aux.next.next; 







martes, 23 de abril de 2013

Permutaciones y Combinaciones en java

Aqui les dejo el codigo de un programa que efectua permutaciones y combinaciones.
------------------------------------------------------------------------------------------------------------
import java.util.Scanner;
public class PermutacionesYCombinaciones {
public static int factorial(int x){
int i,f;
f=1;
for(i=1;i<=x;i++)
            f=f*i;
        return f;
}
//
public static int permuta(int n, int r){
int P;
P=factorial(n)/factorial(n-r);
return P;
}
//
public static int combina(int n, int r){
int c;
c=factorial(n)/(factorial(r)*factorial(n-r));
return c;
}
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        int N,R,Comb,Perm;
        Scanner e=new Scanner(System.in);
        System.out.println("Introdusca el valor N:");
        N=e.nextInt();
        System.out.println("Introdusca el valor R:");
        R=e.nextInt();
        Comb=combina(N,R);
        Perm=permuta(N,R);
        System.out.println("Combinaciones="+Comb);
        System.out.println("Permutaciones="+Perm);
    }
}
------------------------------------------------------------------------------------------------------------
run:
Introdusca el valor N:
5
Introdusca el valor R:
4
Combinaciones=5
Permutaciones=120
BUILD SUCCESSFUL (total time: 8 seconds)

Arreglos en java


He aqui uno de los elementos mas basicos con infinidad de posibilidades de uso en la programacion, los arreglos son listas con datos ya sean caracteres o numeros y aqui les dejo un ejemplo de una lista que pide el tamaño total y entrega el elemento mas grande y donde se encuentra

------------------------------------------------------------------------------------------------------------
import java.util.Scanner;
public class Arreglo {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        int N,m,P,i;
        int V[]=new int[100];
        Scanner e=new Scanner(System.in);
        System.out.println("Total de elementos?");
        N=e.nextInt();
        for (i=0;i<=N;i++)
        {System.err.println("V["+i+"]=");
        V[i]=e.nextInt();
        }
        m=V[0];P=0;
        for (i=1;i<=N;i++)
            if(V[i]>m)
            {m=V[i];
            P=i;
            }
        System.out.println("El mayor es "+m+"y se encuentra en la pisicion "+P);
    }
}
------------------------------------------------------------------------------------------------------------

run:
Total de elementos?
5
V[0]=
1
V[1]=
2
V[2]=
3
V[3]=
4
V[4]=
5
V[5]=
6
El mayor es 6y se encuentra en la pisicion 5
BUILD SUCCESSFUL (total time: 9 seconds)



Modificar Strings en Java

este pequeño y sencillo programa muestra formas para modificar cadenas de caracteres

public class Mutacion {

    public static void main(String[] args) {
   
        String frase;
        frase="frase de prueba";
        System.out.println(frase);
        frase= frase.concat("mutacion 1");
        System.out.println(frase);
        frase= frase.replace("frase" , "asdasdas");
        System.out.println(frase);
        frase=frase.substring(2,5);
        System.out.println(frase);
       
    }
}


He aqui el resultado del programa
run:
frase de prueba
frase de pruebamutacion 1
asdasdas de pruebamutacion 1
das
BUILD SUCCESSFUL (total time: 1 second)