[Suche] Ähnliche Programme 2

kracker87

Grünschnabel
folgendes programm suche ich:
Matrizen addition + multiplikation in java.

bisher habe ich das nur auf javascript gemacht, leider ist es mir nicht gelungen diese auf java zu adaptieren, da ich auf dem gebiet java wohl doch etwas schlechter bin.

suche nur einfachen code, ohne schnick schnack.


außerdem suche ich noch ein "ähnliches" programm zum bubblesort, d.h. was kann man ausser bubblesort noch ähnlich "leichtes" machen ? also bubblesort kann ich bereits, aber das ist auch schon die grenze, ist schon schwer genug find ich.
mfg
kracker
 
Ich hab noch irgendwo 3 Sortiermethoden, wenn ich die finde schick ich die dir mal. Mit dem Rest kann ich dir leider nicht helfen, weil ich nicht mal weiß was das ist :)
 
Musst bis morgen warten, hab die nicht hier, kann erst morgen früh nachsehen :)
 
SelectionSort
Code:
public class Ssort{		//nach dem Kleinsten Element sortieren
	int mini,z,x;
	int[] b;
	public Ssort(int[] a){
		b=a;
	}
	public void select_sort(){
		for(int i=0;i<b.length;i++){					//wiederholter Durchlauf um alle Elemente zu sortieren
			mini=i;										//kleinste Element=erstes Element
			for(int index=i+1;index<b.length;index++){	
				if(b[index]<b[mini])mini=index;			//Vergleich mit kleinstem Element, Position merken
			}
			x=b[mini];									//Tausch
			b[mini]=b[i];
			b[i]=x;
		}
	}
	public void ausgabe(){
		for(int i=0;i<b.length;i++)System.out.println(""+b[i]);
	}
}


QuickSort

Code:
public class Qsort{		//den Array immer wieder in 2 Teie zerlegen, nach kleiner und größer eins Wertes
	int[] b;
	public Qsort(int[] a){
			b=a;
	}
	public void quick_sort(int x, int y){
		int i=x;
		int j=y;
		int mitte=b[((x+y)/2)];			//Median(wert) ermitteln
		while(i<=j){
			while(b[i]<mitte)i++;		//Array vom Anfang durchsuchen
			while(b[j]>mitte)j--;		//Array vom Ende durchsuchen
			if(i<=j){
				int t=b[i];				//Tausch
				b[i]=b[j];
				b[j]=t;
				i++;
				j--;				
			}
		}
		if(x<j)quick_sort(x, j);		//entstandene Arrays teilen & durchsuchen
		if(i<y)quick_sort(i, y);
		
	}
	public void ausgabe(){
		for(int i=0;i<b.length;i++)System.out.println(""+b[i]);
	}
}


InsertionSort

Code:
public class Isort{		//Element wird mit den Vorgängern verglichen
	int v, wert;
	int[] b;
	public Isort(int[] a){
		b=a;
	}
	public void insertion_sort(){
		for(int index=1;index<b.length;index++){
			v=index;		//Position des Vergleichselementes speichern
			wert=b[v];		//Wert des Vergleichselementes speichern
			while(v>0 && b[v-1]>wert){	//größere Element nach hinten verschieben
				b[v]=b[v-1];
				v--;
			}
			b[v]=wert;		//Vergleichselement einfügen
		}
	}
	public void ausgabe(){
		for(int i=0;i<b.length;i++)System.out.println(""+b[i]);
	}	
}

Reicht das :)

Ich glaube QuickSort ist das schnellste.

MFG ;)
 
Zuletzt bearbeitet:
Zurück