old projects
This commit is contained in:
15
Dijkstra_vs/backup/input.txt
Normal file
15
Dijkstra_vs/backup/input.txt
Normal file
@@ -0,0 +1,15 @@
|
||||
n 100 250
|
||||
n 266 100
|
||||
n 266 400
|
||||
n 433 100
|
||||
n 433 300
|
||||
n 600 250
|
||||
e 2 4 33
|
||||
e 3 5 2
|
||||
e 3 4 20
|
||||
e 4 5 1
|
||||
e 2 3 20
|
||||
e 1 4 10
|
||||
e 1 3 50
|
||||
e 0 2 20
|
||||
e 0 1 10
|
||||
14
Dijkstra_vs/backup/input2.txt
Normal file
14
Dijkstra_vs/backup/input2.txt
Normal file
@@ -0,0 +1,14 @@
|
||||
n 100 250
|
||||
n 200 250
|
||||
n 350 100
|
||||
n 350 400
|
||||
n 500 250
|
||||
n 600 250
|
||||
e 0 1 10
|
||||
e 1 2 1
|
||||
e 2 4 3
|
||||
e 4 3 10
|
||||
e 3 1 4
|
||||
e 4 5 22
|
||||
|
||||
|
||||
39
Dijkstra_vs/backup/input3.txt
Normal file
39
Dijkstra_vs/backup/input3.txt
Normal file
@@ -0,0 +1,39 @@
|
||||
n 217 300
|
||||
n 403 316
|
||||
n 118 60
|
||||
n 645 303
|
||||
n 402 71
|
||||
n 245 234
|
||||
n 580 376
|
||||
n 448 483
|
||||
n 146 366
|
||||
n 453 215
|
||||
e 0 5 343
|
||||
e 1 6 954
|
||||
e 1 5 879
|
||||
e 2 5 1054
|
||||
e 2 4 1364
|
||||
e 3 6 433
|
||||
e 4 5 1106
|
||||
e 8 0 464
|
||||
e 0 7 1435
|
||||
e 1 7 811
|
||||
e 6 7 837
|
||||
e 4 9 766
|
||||
e 3 9 1053
|
||||
e 1 9 524
|
||||
e 5 0 343
|
||||
e 6 1 954
|
||||
e 5 1 879
|
||||
e 5 2 1054
|
||||
e 4 2 1364
|
||||
e 6 3 433
|
||||
e 5 4 1106
|
||||
e 0 8 464
|
||||
e 7 0 1435
|
||||
e 7 1 811
|
||||
e 7 6 837
|
||||
e 9 4 766
|
||||
e 9 3 1053
|
||||
e 9 1 524
|
||||
|
||||
BIN
Dijkstra_vs/backup/yeet.class
Normal file
BIN
Dijkstra_vs/backup/yeet.class
Normal file
Binary file not shown.
132
Dijkstra_vs/backup/yeet.java
Normal file
132
Dijkstra_vs/backup/yeet.java
Normal file
@@ -0,0 +1,132 @@
|
||||
import java.util.Scanner;
|
||||
import java.io.File;
|
||||
import java.io.FileNotFoundException;
|
||||
import javax.swing.*;
|
||||
import java.awt.*;
|
||||
import java.lang.Math;
|
||||
import java.util.Random;
|
||||
import java.util.*;
|
||||
|
||||
public class yeet extends JFrame {
|
||||
Scanner scan;
|
||||
int n, e;// n: Anzahl Punkte, e: Anzahl Wege
|
||||
String tmpStr1, filename;
|
||||
int[] xarr, yarr;
|
||||
int[][] earr;
|
||||
char tmpChar;
|
||||
|
||||
public static void main(String[] args) {
|
||||
if (args.length == 0) {
|
||||
new yeet();
|
||||
} else {
|
||||
for (int i = 0; i < args.length; i++) {
|
||||
new yeet(args[i]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public yeet() {
|
||||
setSize(800, 800);
|
||||
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||
setLocationRelativeTo(null);
|
||||
setVisible(true);
|
||||
setBackground(new Color(0, 0, 0));
|
||||
filename = "input.txt";
|
||||
steps();
|
||||
}
|
||||
|
||||
public yeet(String input) {
|
||||
setSize(800, 800);
|
||||
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||
setLocationRelativeTo(null);
|
||||
setVisible(true);
|
||||
setBackground(new Color(0, 0, 0));
|
||||
filename = input;
|
||||
steps();
|
||||
}
|
||||
|
||||
public void steps() {
|
||||
readFile(); // einlesen
|
||||
readNE(); // anzahl von n und e finden. Als int n und e gespeichert
|
||||
make(); // Arrays erstellen
|
||||
repaint();
|
||||
}
|
||||
|
||||
public void readFile() {
|
||||
try {
|
||||
scan = new Scanner(new File(filename));
|
||||
} catch (FileNotFoundException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public void readNE() {
|
||||
n = 0;
|
||||
e = 0;
|
||||
while (scan.hasNext() == true) {
|
||||
tmpChar = scan.next().charAt(0);
|
||||
if (tmpChar == 'n') {
|
||||
n++;
|
||||
}
|
||||
if (tmpChar == 'e') {
|
||||
e++;
|
||||
}
|
||||
}
|
||||
readFile();
|
||||
}
|
||||
|
||||
public void make() {
|
||||
readFile();
|
||||
xarr = new int[n];// X Position
|
||||
yarr = new int[n];// Y Position
|
||||
earr = new int[e][3];// [x][y]; x:Wert, y:0=xPos, 1=yPos, 2=Abstand
|
||||
for (int i = 0; i < n; i++) {
|
||||
scan.next();
|
||||
xarr[i] = scan.nextInt();
|
||||
yarr[i] = scan.nextInt();
|
||||
}
|
||||
for (int i = 0; i < e; i++) {
|
||||
scan.next();
|
||||
earr[i][0] = scan.nextInt();// Start
|
||||
earr[i][1] = scan.nextInt();// Ziel
|
||||
earr[i][2] = scan.nextInt();// Entfernung
|
||||
}
|
||||
readFile();
|
||||
}
|
||||
|
||||
public void paint(Graphics g) {
|
||||
labAnzeigen(g);
|
||||
}
|
||||
|
||||
public void neuzeichnen() {
|
||||
repaint();
|
||||
}
|
||||
|
||||
public void anzeigen(Graphics g) {
|
||||
labAnzeigen(g);
|
||||
}
|
||||
|
||||
public void labAnzeigen(Graphics g) {
|
||||
g.clearRect(0, 0, 800, 800);// Feld clearen
|
||||
g.setColor(new Color(200, 10, 100));// Farbe setzen
|
||||
for (int i = 0; i < n; i++) {
|
||||
g.fillOval(xarr[i], yarr[i], 36, 36);// Punkt fur Stadt erstellen
|
||||
g.setColor(new Color(0, 0, 0));
|
||||
g.drawString(Integer.toString(i), xarr[i] + 14, yarr[i] + 22);// Stadt bezeichnen
|
||||
g.setColor(new Color(200, 10, 100));
|
||||
}
|
||||
for (int i = 0; i < e; i++) {
|
||||
g.drawLine(xarr[earr[i][0]] + 16, yarr[earr[i][0]] + 16, xarr[earr[i][1]] + 16, yarr[earr[i][1]] + 16);// linie
|
||||
// zwischen
|
||||
// zwei
|
||||
// Punkten
|
||||
}
|
||||
for (int i = 0; i < e; i++) {
|
||||
g.setColor(new Color(100, 255, 100));
|
||||
g.drawString(Integer.toString(earr[i][2]), (xarr[earr[i][0]] + xarr[earr[i][1]]) / 2 + 10,
|
||||
(yarr[earr[i][0]] + yarr[earr[i][1]]) / 2 + 20);// zeichnung der Linie
|
||||
g.setColor(new Color(200, 10, 100));
|
||||
}
|
||||
}
|
||||
}
|
||||
15
Dijkstra_vs/input.txt
Normal file
15
Dijkstra_vs/input.txt
Normal file
@@ -0,0 +1,15 @@
|
||||
n 100 250
|
||||
n 266 100
|
||||
n 266 400
|
||||
n 433 100
|
||||
n 433 300
|
||||
n 600 250
|
||||
e 2 4 33
|
||||
e 3 5 2
|
||||
e 3 4 20
|
||||
e 4 5 1
|
||||
e 2 3 20
|
||||
e 1 4 10
|
||||
e 1 3 50
|
||||
e 0 2 20
|
||||
e 0 1 10
|
||||
14
Dijkstra_vs/input2.txt
Normal file
14
Dijkstra_vs/input2.txt
Normal file
@@ -0,0 +1,14 @@
|
||||
n 100 250
|
||||
n 200 250
|
||||
n 350 100
|
||||
n 350 400
|
||||
n 500 250
|
||||
n 600 250
|
||||
e 0 1 10
|
||||
e 1 2 1
|
||||
e 2 4 3
|
||||
e 4 3 10
|
||||
e 3 1 4
|
||||
e 4 5 22
|
||||
|
||||
|
||||
39
Dijkstra_vs/input3.txt
Normal file
39
Dijkstra_vs/input3.txt
Normal file
@@ -0,0 +1,39 @@
|
||||
n 217 300
|
||||
n 403 316
|
||||
n 118 60
|
||||
n 645 303
|
||||
n 402 71
|
||||
n 245 234
|
||||
n 580 376
|
||||
n 448 483
|
||||
n 146 366
|
||||
n 453 215
|
||||
e 0 5 343
|
||||
e 1 6 954
|
||||
e 1 5 879
|
||||
e 2 5 1054
|
||||
e 2 4 1364
|
||||
e 3 6 433
|
||||
e 4 5 1106
|
||||
e 8 0 464
|
||||
e 0 7 1435
|
||||
e 1 7 811
|
||||
e 6 7 837
|
||||
e 4 9 766
|
||||
e 3 9 1053
|
||||
e 1 9 524
|
||||
e 5 0 343
|
||||
e 6 1 954
|
||||
e 5 1 879
|
||||
e 5 2 1054
|
||||
e 4 2 1364
|
||||
e 6 3 433
|
||||
e 5 4 1106
|
||||
e 0 8 464
|
||||
e 7 0 1435
|
||||
e 7 1 811
|
||||
e 7 6 837
|
||||
e 9 4 766
|
||||
e 9 3 1053
|
||||
e 9 1 524
|
||||
|
||||
BIN
Dijkstra_vs/yeet.class
Normal file
BIN
Dijkstra_vs/yeet.class
Normal file
Binary file not shown.
170
Dijkstra_vs/yeet.java
Normal file
170
Dijkstra_vs/yeet.java
Normal file
@@ -0,0 +1,170 @@
|
||||
import java.util.Scanner;
|
||||
import java.io.File;
|
||||
import java.io.FileNotFoundException;
|
||||
import javax.swing.*;
|
||||
import java.awt.*;
|
||||
import java.lang.Math;
|
||||
import java.util.Random;
|
||||
import java.util.*;
|
||||
|
||||
public class yeet extends JFrame {
|
||||
Scanner scan;
|
||||
int n, e; // n: Anzahl Punkte, e: Anzahl Wege
|
||||
String tmpStr1, filename;
|
||||
int[] xarr, yarr;
|
||||
int[][] earr;
|
||||
char tmpChar;
|
||||
int[] dist; // distanzen
|
||||
int[][] con; // connections
|
||||
|
||||
public static void main(String[] args) {
|
||||
if (args.length == 0) {
|
||||
new yeet();
|
||||
} else {
|
||||
for (int i = 0; i < args.length; i++) {
|
||||
new yeet(args[i]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public yeet() {
|
||||
setSize(800, 800);
|
||||
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||
setLocationRelativeTo(null);
|
||||
setVisible(true);
|
||||
setBackground(new Color(0, 0, 0));
|
||||
filename = "input.txt";
|
||||
steps();
|
||||
}
|
||||
|
||||
public yeet(String input) {
|
||||
setSize(800, 800);
|
||||
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||
setLocationRelativeTo(null);
|
||||
setVisible(true);
|
||||
setBackground(new Color(0, 0, 0));
|
||||
filename = input;
|
||||
steps();
|
||||
}
|
||||
|
||||
public void steps() {
|
||||
readFile(); // einlesen
|
||||
readNE(); // anzahl von n und e finden. Als int n und e gespeichert
|
||||
make(); // Arrays erstellen
|
||||
repaint();
|
||||
}
|
||||
|
||||
public void readFile() {
|
||||
try {
|
||||
scan = new Scanner(new File(filename));
|
||||
} catch (FileNotFoundException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public void readNE() {
|
||||
n = 0;
|
||||
e = 0;
|
||||
while (scan.hasNext() == true) {
|
||||
tmpChar = scan.next().charAt(0);
|
||||
if (tmpChar == 'n') {
|
||||
n++;
|
||||
}
|
||||
if (tmpChar == 'e') {
|
||||
e++;
|
||||
}
|
||||
}
|
||||
readFile();
|
||||
}
|
||||
|
||||
public void make() {
|
||||
readFile();
|
||||
xarr = new int[n]; // X Position
|
||||
yarr = new int[n]; // Y Position
|
||||
earr = new int[e][3]; // [x][y]; x:Wert, y:0=Start, 1=Ziel, 2=Abstand
|
||||
|
||||
for (int i = 0; i < n; i++) {
|
||||
scan.next();
|
||||
xarr[i] = scan.nextInt();
|
||||
yarr[i] = scan.nextInt();
|
||||
}
|
||||
for (int i = 0; i < e; i++) {
|
||||
scan.next();
|
||||
earr[i][0] = scan.nextInt();// Start
|
||||
earr[i][1] = scan.nextInt();// Ziel
|
||||
earr[i][2] = scan.nextInt();// Entfernung
|
||||
}
|
||||
readFile();
|
||||
}
|
||||
|
||||
public int[] qwerty(int node) {
|
||||
dist = new int[n]; // kurzeste Distanz von 0 zu Punkt i
|
||||
int boi = 0;
|
||||
for (int r = 0; r < n; r++) {
|
||||
if (conn(node, r)) {
|
||||
boi++;
|
||||
}
|
||||
}
|
||||
int[] out;
|
||||
out = new int[boi];
|
||||
int boii = 0;
|
||||
for (int r = 0; r < n; r++) {
|
||||
if (conn(node, r)) {
|
||||
out[boii] = r;
|
||||
}
|
||||
}
|
||||
|
||||
return out;
|
||||
}
|
||||
|
||||
public boolean conn(int input, int input2) {
|
||||
boolean fish = false;
|
||||
for (int i = 0; i < n; i++) {
|
||||
if (earr[i][0] == input && earr[i][1] == input2) {
|
||||
fish = true;
|
||||
}
|
||||
if (earr[i][0] == input2 && earr[i][1] == input) {
|
||||
fish = true;
|
||||
}
|
||||
|
||||
}
|
||||
return fish;
|
||||
}
|
||||
|
||||
public int distance(int input, int input2) {
|
||||
for (int i = 0; i < n; i++) {
|
||||
if (earr[i][0] == input && earr[i][1] == input2) {
|
||||
return earr[i][2];
|
||||
}
|
||||
if (earr[i][0] == input2 && earr[i][1] == input) {
|
||||
return earr[i][2];
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
public void paint(Graphics g) {
|
||||
labAnzeigen(g);
|
||||
}
|
||||
|
||||
public void labAnzeigen(Graphics g) {
|
||||
g.clearRect(0, 0, 800, 800); // Feld clearen
|
||||
g.setColor(new Color(200, 10, 100)); // Farbe setzen
|
||||
for (int i = 0; i < n; i++) {
|
||||
g.fillOval(xarr[i], yarr[i], 36, 36); // Punkt fur Stadt erstellen
|
||||
g.setColor(new Color(0, 0, 0));
|
||||
g.drawString(Integer.toString(i), xarr[i] + 14, yarr[i] + 22); // Stadt bezeichnen
|
||||
g.setColor(new Color(200, 10, 100));
|
||||
}
|
||||
for (int i = 0; i < e; i++) {
|
||||
g.drawLine(xarr[earr[i][0]] + 16, yarr[earr[i][0]] + 16, xarr[earr[i][1]] + 16, yarr[earr[i][1]] + 16); // linie
|
||||
}
|
||||
for (int i = 0; i < e; i++) {
|
||||
g.setColor(new Color(100, 255, 100));
|
||||
g.drawString(Integer.toString(earr[i][2]), (xarr[earr[i][0]] + xarr[earr[i][1]]) / 2 + 10,
|
||||
(yarr[earr[i][0]] + yarr[earr[i][1]]) / 2 + 20); // zeichnung der Linie
|
||||
g.setColor(new Color(200, 10, 100));
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user