3. Normalform Datenbank?

Guten Morgen,

ich habe eine Frage zu einer Datenbank-Übung, die ich gerade mache. Es geht darum, die Daten bis zur 3. NF zu untersuchen.

"Die Betriebsleitung beauftragt dich, die Verwaltung des Personals zu digitalisieren. Folgende Daten der Mitarbeiter werden erhoben: Vorname, Nachname, Geburtsdatum, Geschlecht, Wohnadresse, Anstellungsdatum, Gehaltsstufe, Abteilung, alle Gehälter mit Angabe des Datums der Auszahlungender Gehälter mit Gehaltsbetrag. Es soll möglich sein, die Karriere des Mitarbeiters in den Abteilungen, in denen er gearbeitet hat, zu verfolgen (mit Beginn des Abteilungswechsels)."

Mitarbeiter

Mitarbeiter_ID - PRIMARY KEY
Vorname
Nachname
Geburtsdatum
Geschlecht
PLZ
ORT
Straße
Hausnummer
Abteilung
Gehaltsstufe - FOREIGN KEY (Gehaltsstufe)
Datum_Auszahlung

Gehalt

Gehaltsstufe - PRIMARY KEY
Gehalt

Ist es richtig, dass es sich hierbei um eine 1 zu n Beziehung handelt?
1 Mitarbeiter hat 1 Gehalt.
1 Gehalt wird an n Mitarbeitern vergeben.

Ich glaube, dass ich die Normalisierung soweit richtig habe, bis auf das Attribut "Datum_Auszahlung".
Wäre es hier richtig, einen neuen Entitätstypen zu erstellen und Mitarbeiter_ID und Gehaltsstufe als Fremdschlüssel hinzuzufügen oder sollte man das Attribut entweder bei "Gehalt" oder "Mitarbeiter" hinzufügen?

Falls es noch andere Fehler in der Normalisierung gibt, wäre ich froh, wenn ich darüber informiert werde :).

Danke im Vorraus
Gruß Leyonad

Computer, Schule, Mathematik, Datenbank, Informatik, Entity-Relationship Model, normalisierung, Relation
Maze Solving Algorithmus?

Hi,

ich will mehrere Algorithmen implementieren, womit ich ein Maze lösen kann. Dabei gehts mir um Geschwindigkeit. Das gesamte Maze ist schon bekannt, also die "Maus" kann von jedem Punkt erfahren ob es eine Wand, oder ein Weg ist.

Derzeit habe ich den Wavepropagation, den Wallfollower und einen Kombi algorithmus implementiert. Der Kombi algorithmus entstand, nachdem ich Rekursion versucht hatte, bis ich gemerkt habe, dass das ja garnicht in C# geht xD

Dann hab ich per While loop einfach immer geguckt welche Richtungen sind möglich und dann halt random eine Richtung gewählt. Wenns deadend ist, halt wieder zurück, bis eine unbesichtigte Zelle kommt. Vllt habt ihr ja eine Idee wie der heißt.

Für mich neuling kling der Wavepropagation algorithmus derzeit am optimalsten, denn er hört auf, sobald das ziel gefunden ist.

Man könnte evtl. den noch Optimieren, indem man an an jeder Kreuzung ein Node setzt.

Der Djiktra klingt für mich als Neuling wie ähnlich des Wavepropagation Algorithmus, zumindest wenn man nicht die Map in nodes (bei jeder Kreuzung) plaziert.

Gibts einen viel schnelleren?

Die Map ist so um die 10k x 10k bis 15k x15k

Evtl auch mehr, wenn ich diese nicht painten würde, sondern nur als byte array lasse. Dauert aber so schon lang genug xD

Generiert wird dieses per Binary Tree derzeit. Dieser ist wenigstens Ultra schnell. Prims algorithmus ist mir zu langsam für diese Größenordnung.

Computer, Mathematik, programmieren, Datenverarbeitung, Informatik, Algorithmus

Meistgelesene Beiträge zum Thema Informatik