Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dennis-bauer/linkedlist-visualizer
Ein Visualisierungstool für verkettete Listen, programmiert in Java mit JavaFX.
https://github.com/dennis-bauer/linkedlist-visualizer
java javafx linked-list
Last synced: 5 days ago
JSON representation
Ein Visualisierungstool für verkettete Listen, programmiert in Java mit JavaFX.
- Host: GitHub
- URL: https://github.com/dennis-bauer/linkedlist-visualizer
- Owner: Dennis-Bauer
- Created: 2025-02-03T14:12:44.000Z (9 days ago)
- Default Branch: main
- Last Pushed: 2025-02-06T18:14:17.000Z (6 days ago)
- Last Synced: 2025-02-06T19:27:48.154Z (6 days ago)
- Topics: java, javafx, linked-list
- Language: Java
- Homepage:
- Size: 7.07 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# **Linked List Visualizer (German)**
Ein Visualisierungstool für verkettete Listen, programmiert in **Java** mit **JavaFX**.
## **Funktionen**
- **Anzeige vom Current Zeiger**: Es wird nur der Knoten sichtbar gemacht, auf denen der Zeiger Current steht.
- **Visualisierung der Zeiger**: Es werden die drei Zeiger (**Current**, **First**, **Last**) gezeigt.
- **Keine sichtbaren Werte in den Nodes**: Werte, beim Current-zeiger, werden erst vollständig sichtbar, wenn `getContent()` aufgerufen wird.
- **Voreingestellte Test-Liste**: Eine vorgefertigte Liste kann genutzt und bearbeitet werden.
- **Erstellung neuer Listen**:
- Leere Liste
- Liste mit einem initialen Element
- **Methodennamen als Button-Beschriftungen**: Die Buttons sind exakt so benannt wie die Methoden.
- **Eingabe über Input-Box**: Werte werden aus der Input-Box entnommen.
- **Anpassbare Darstellung** in der `Main`-Klasse:
- **Fenstergröße**
- **Schriftart und Schriftgröße**
- **Farben der Pfeile**
- **Integer-Liste**: Standardmäßig sind Zahlen auf **3 Ziffern begrenzt** (anpassbar in `Main`).## **Methoden**
### `next()`
Verschiebt den **Current-Zeiger** nach rechts. Wenn er am Ende ist, wird er auf `null` gesetzt. Falls `Current == null`, passiert nichts.### `toFirst()`
Setzt den **Current-Zeiger** auf das erste Element. Wenn die Liste leer ist, bleibt `Current == null`.### `toLast()`
Setzt den **Current-Zeiger** auf das letzte Element. Wenn die Liste leer ist, bleibt `Current == null`.### `append(Content)`
Fügt das **Element ans Ende** der Liste hinzu (`Content` aus der Input-Box).### `insert(Content)`
Fügt ein **Element rechts neben** dem Current-Zeiger ein (`Content` aus der Input-Box).### `remove()`
Löscht das **Element, auf dem der Current-Zeiger steht**. Falls `Current == null`, passiert nichts.### `hasCurrentAccess()`
Gibt `true` zurück, wenn `Current` **nicht null** ist, andernfalls `false`. Das Ergebnis wird im **Output-Label** angezeigt.### `setContent(Content)`
Ändert den **Wert des aktuellen Knotens** (`Content` aus der Input-Box). Falls `Current == null`, passiert nichts.### `getContent()`
Macht die gespeicherte Zahl in der **List-View heller**, wenn `Current` auf einen gültigen Knoten zeigt.### `isEmpty()`
Gibt `true` zurück, wenn die Liste **leer** ist.---
Diese **Linked List Visualisierung** bietet eine intuitive Möglichkeit, das Verhalten einer **verketteten Liste** zu verstehen und zu testen.
---
# **Linked List Visualizer (English)**
A visualization tool for linked lists, programmed in **Java** with **JavaFX**.
## **Features**
- **Current Pointer Display**: Only the node where the **Current pointer** is located is visible.
- **Pointer Visualization**: The three pointers (**Current**, **First**, **Last**) are displayed.
- **No visible values in the nodes**: Values at the Current pointer are only fully visible when `getContent()` is called.
- **Predefined Test List**: A predefined list can be used and modified.
- **Creating New Lists**:
- Empty list
- List with an initial element
- **Method names as button labels**: The buttons are named exactly as the methods.
- **Input via Input Box**: Values are taken from the input box.
- **Customizable Display** in the `Main` class:
- **Window size**
- **Font style and size**
- **Arrow colors**
- **Integer List**: By default, numbers are limited to **3 digits** (configurable in `Main`).## **Methods**
### `next()`
Moves the **Current pointer** to the next node. If it reaches the end, it is set to `null`. If `Current == null`, nothing happens.### `toFirst()`
Sets the **Current pointer** to the first element. If the list is empty, `Current` remains `null`.### `toLast()`
Sets the **Current pointer** to the last element. If the list is empty, `Current` remains `null`.### `append(Content)`
Adds the **element to the end** of the list (`Content` from the input box).### `insert(Content)`
Inserts an **element right next to** the Current pointer (`Content` from the input box).### `remove()`
Deletes the **element at the Current pointer**. If `Current == null`, nothing happens.### `hasCurrentAccess()`
Returns `true` if `Current` is **not null**, otherwise `false`. The result is displayed in the **Output label**.### `setContent(Content)`
Changes the **value of the current node** (`Content` from the input box). If `Current == null`, nothing happens.### `getContent()`
Makes the stored number in the **List-View lighter** when `Current` points to a valid node.### `isEmpty()`
Returns `true` if the list is **empty**.---
This **Linked List Visualization** provides an intuitive way to understand and test the behavior of a **linked list**.
# **Example Pictures (Beispiel Bilder)**
![]()
![]()
![]()