Add 1 5 (Queue)
This commit is contained in:
parent
921bd9f0f1
commit
ff28fcb099
1
.idea/misc.xml
generated
1
.idea/misc.xml
generated
@ -1,4 +1,3 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project version="4">
|
<project version="4">
|
||||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_21" default="true" project-jdk-name="21" project-jdk-type="JavaSDK">
|
<component name="ProjectRootManager" version="2" languageLevel="JDK_21" default="true" project-jdk-name="21" project-jdk-type="JavaSDK">
|
||||||
<output url="file://$PROJECT_DIR$/out" />
|
<output url="file://$PROJECT_DIR$/out" />
|
||||||
|
12
README.md
12
README.md
@ -5,4 +5,14 @@
|
|||||||
## Vorhandene Aufgaben:
|
## Vorhandene Aufgaben:
|
||||||
- Vorlesung 1
|
- Vorlesung 1
|
||||||
- Aufgabe 4 (ADT zum Verwalten von Produkten)
|
- Aufgabe 4 (ADT zum Verwalten von Produkten)
|
||||||
- Aufgabe 6 (Linked List erweitern)
|
- Aufgabe 5 (Queue Implementieren)
|
||||||
|
- Aufgabe 6 (Linked List erweitern)
|
||||||
|
|
||||||
|
## Fehlende (Teil-)Aufgaben
|
||||||
|
- VL 1 Aufgabe 5
|
||||||
|
<br> Implementierung durch Verwendung einer List anstelle des Arrays
|
||||||
|
- Vl 1 Aufgabe 6
|
||||||
|
<br> "Remove" Methode hinzufügen
|
||||||
|
|
||||||
|
## Fragen zur Richtigkeit
|
||||||
|
- VL1 Aufg. 6 "printALL" Methode <br>ca. Zeile 35
|
43
src/part1/aufg5/Anwendung.java
Normal file
43
src/part1/aufg5/Anwendung.java
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
package part1.aufg5;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Aufgabe 5
|
||||||
|
* Implementieren Sie eine generische Schlange in Java!
|
||||||
|
* Verwenden Sie dabei zunächst ein Feld mit der (Anfangs-)Dimension
|
||||||
|
* 100 als innere Datenstruktur!
|
||||||
|
* Speichern und Entnehmen Sie Objekte einer selbstdefinierten Klasse!
|
||||||
|
* Ändern Sie nun die innere Struktur in eine Liste um!
|
||||||
|
*/
|
||||||
|
public class Anwendung {
|
||||||
|
public static void main(String[] args){
|
||||||
|
|
||||||
|
queue schlenglein = new queue();
|
||||||
|
|
||||||
|
|
||||||
|
schlenglein.add("1");
|
||||||
|
schlenglein.add("2");
|
||||||
|
schlenglein.add("3");
|
||||||
|
schlenglein.add("4");
|
||||||
|
schlenglein.add("5");
|
||||||
|
|
||||||
|
schlenglein.print();
|
||||||
|
|
||||||
|
schlenglein.remove();
|
||||||
|
|
||||||
|
schlenglein.print();
|
||||||
|
|
||||||
|
schlenglein.add("6");
|
||||||
|
|
||||||
|
schlenglein.print();
|
||||||
|
|
||||||
|
schlenglein.remove();
|
||||||
|
schlenglein.remove();
|
||||||
|
schlenglein.remove();
|
||||||
|
schlenglein.remove();
|
||||||
|
schlenglein.remove();
|
||||||
|
|
||||||
|
schlenglein.print();
|
||||||
|
|
||||||
|
schlenglein.remove();
|
||||||
|
}
|
||||||
|
}
|
50
src/part1/aufg5/queue.java
Normal file
50
src/part1/aufg5/queue.java
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
package part1.aufg5;
|
||||||
|
|
||||||
|
/*
|
||||||
|
Aufgabe 5
|
||||||
|
Implementieren Sie eine generische Schlange in Java!
|
||||||
|
Verwenden Sie dabei zunächst ein Feld mit der (Anfangs-)Dimension
|
||||||
|
100 als innere Datenstruktur!
|
||||||
|
Speichern und Entnehmen Sie Objekte einer selbstdefinierten Klasse!
|
||||||
|
Ändern Sie nun die innere Struktur in eine Liste um!
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
public class queue {
|
||||||
|
private int ARRAY_SIZE = 100;
|
||||||
|
private String[] array = new String[ARRAY_SIZE];
|
||||||
|
private int firstFreeIndex = 0;
|
||||||
|
|
||||||
|
public void add(String s) {
|
||||||
|
if (firstFreeIndex == ARRAY_SIZE) {
|
||||||
|
System.out.println("Unable to add into List of max length!");
|
||||||
|
} else {
|
||||||
|
array[firstFreeIndex] = s;
|
||||||
|
firstFreeIndex++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void remove() {
|
||||||
|
if (firstFreeIndex == 0) {
|
||||||
|
System.out.println("Unable to remove Element from empty List!");
|
||||||
|
} else {
|
||||||
|
for (int i = 0; i < firstFreeIndex; i++) {
|
||||||
|
array[i] = array[i + 1];
|
||||||
|
}
|
||||||
|
|
||||||
|
firstFreeIndex--;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void print() {
|
||||||
|
if (firstFreeIndex == 0) {
|
||||||
|
System.out.println("Unable to print empty List!!");
|
||||||
|
|
||||||
|
} else {
|
||||||
|
for (int i = 0; i < (firstFreeIndex - 1); i++) {
|
||||||
|
System.out.print(array[i] + " ; ");
|
||||||
|
}
|
||||||
|
System.out.println(array[firstFreeIndex - 1]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -32,14 +32,34 @@ public class LinkedList<T>{
|
|||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
public void printALL(){
|
public void printALL(){ // correct???
|
||||||
System.out.println(anchor);
|
Cell<T> next = anchor.next;
|
||||||
|
|
||||||
Cell next = anchor.next;
|
System.out.println(anchor.data);
|
||||||
|
|
||||||
while (next != null){
|
while (next != null){
|
||||||
System.out.println(next);
|
System.out.println(next.data);
|
||||||
next = next.next;
|
next = next.next;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void deleteFirst(T value){
|
||||||
|
Cell<T> next = anchor.next;
|
||||||
|
|
||||||
|
// Check Head
|
||||||
|
if (anchor.data == value){
|
||||||
|
anchor = anchor.next;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Check Tail
|
||||||
|
while (next != null){ // starts with 2nd Element of the List
|
||||||
|
if(next.data == value){
|
||||||
|
next = next.next.next;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
next = next.next; // must happen at end of loop
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user