Commit f10ef33c authored by Uwe Wienkop's avatar Uwe Wienkop
Browse files

2020-05-05b

parent 5f1bb3b0
...@@ -147,6 +147,7 @@ namespace _02VerketteteListe_2 ...@@ -147,6 +147,7 @@ namespace _02VerketteteListe_2
// Wenn gesuchtes Element in Liste vorhanden // Wenn gesuchtes Element in Liste vorhanden
if (item.next != null) if (item.next != null)
{ {
anz--;
// Nächstes Element überspringen = löschen // Nächstes Element überspringen = löschen
item.next = item.next.next; item.next = item.next.next;
// Wenn letztes Element = gesuchtes Element // Wenn letztes Element = gesuchtes Element
...@@ -155,7 +156,6 @@ namespace _02VerketteteListe_2 ...@@ -155,7 +156,6 @@ namespace _02VerketteteListe_2
} }
} }
} }
public void AddBeforeNth(int index, string name) public void AddBeforeNth(int index, string name)
{ {
if (index < 0 || index > anz) if (index < 0 || index > anz)
...@@ -171,7 +171,7 @@ namespace _02VerketteteListe_2 ...@@ -171,7 +171,7 @@ namespace _02VerketteteListe_2
Element item = anf; Element item = anf;
for (int i = 1; i < index; i++) for (int i = 1; i < index; i++)
item = item.next; item = item.next;
neu.next = item.next; neu.next = item.next; // Die Reihenfolge dieses und des nächsten Befehls ist ENTSCHEIDEND!
item.next = neu; item.next = neu;
} }
} }
...@@ -186,6 +186,7 @@ namespace _02VerketteteListe_2 ...@@ -186,6 +186,7 @@ namespace _02VerketteteListe_2
AddFront(name); AddFront(name);
else else
{ {
// Wir wissen: Das neue Element ist nicht das erste und nicht das letzte Element
Element neu = new Element(name); Element neu = new Element(name);
anz++; anz++;
...@@ -228,6 +229,13 @@ namespace _02VerketteteListe_2 ...@@ -228,6 +229,13 @@ namespace _02VerketteteListe_2
l1.AddSorted("Claudia"); l1.AddSorted("Claudia");
l1.AddSorted("Dieter"); l1.AddSorted("Dieter");
l1.Print(); l1.Print();
Console.WriteLine("==================");
//l1.DeleteFirst();
//l1.DeleteLast();
//l1.DeleteNth(1);
//l1.Print();
l1.AddBeforeNth(2, "Bodo");
l1.Print();
} }
} }
} }
...@@ -27,17 +27,31 @@ namespace _03_UebgDi_ZyklischeListe ...@@ -27,17 +27,31 @@ namespace _03_UebgDi_ZyklischeListe
} }
public void Print() public void Print()
{ {
//for (Element item = anf; item != null; item = item.next)
// Console.WriteLine(item);
if (anf == null)
return;
// Wir wissen: Es existiert mindestens EIN Element
Element tmp = anf;
do
{
Console.WriteLine(tmp);
tmp = tmp.next;
} while (tmp!=null && tmp != anf);
} }
public void SetIterator(int plus) public void SetIterator(int offset = 0)
{ {
iterator = anf;
for (int i = 0; i < offset; i++)
{
iterator = iterator.next;
}
} }
public string GetName() => ; public string GetName() => iterator.name;
public void MoveIterator() { } public void MoveNext() { iterator = iterator.next; }
} }
// ===========================================================
class Program class Program
{ {
static void Main(string[] args) static void Main(string[] args)
...@@ -53,12 +67,12 @@ namespace _03_UebgDi_ZyklischeListe ...@@ -53,12 +67,12 @@ namespace _03_UebgDi_ZyklischeListe
cl.CloseCycle(); cl.CloseCycle();
cl.Print(); cl.Print();
Console.WriteLine("-------------"); Console.WriteLine("-------------");
//cl.SetIterator(2); cl.SetIterator(2);
//for (int i = 0; i < 10; i++) for (int i = 0; i < 10; i++)
//{ {
// Console.WriteLine(cl.GetName()); Console.WriteLine(cl.GetName());
// cl.MoveIterator(); cl.MoveNext();
//} }
} }
} }
} }
...@@ -10,3 +10,4 @@ C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03 UebgDi ZyklischeListe\obj\ ...@@ -10,3 +10,4 @@ C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03 UebgDi ZyklischeListe\obj\
C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03 UebgDi ZyklischeListe\obj\Debug\netcoreapp3.1\03 UebgDi ZyklischeListe.dll C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03 UebgDi ZyklischeListe\obj\Debug\netcoreapp3.1\03 UebgDi ZyklischeListe.dll
C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03 UebgDi ZyklischeListe\obj\Debug\netcoreapp3.1\03 UebgDi ZyklischeListe.pdb C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03 UebgDi ZyklischeListe\obj\Debug\netcoreapp3.1\03 UebgDi ZyklischeListe.pdb
C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03 UebgDi ZyklischeListe\obj\Debug\netcoreapp3.1\03 UebgDi ZyklischeListe.genruntimeconfig.cache C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03 UebgDi ZyklischeListe\obj\Debug\netcoreapp3.1\03 UebgDi ZyklischeListe.genruntimeconfig.cache
C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\03 UebgDi ZyklischeListe\obj\Debug\netcoreapp3.1\03 UebgDi ZyklischeListe.csprojAssemblyReference.cache
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment