C#, LinkedList, Sort Funktion

Horstl

Grünschnabel
Heeey miteinander,

ich stehe vor folgendem Problem.

Ich würde ganz einfach eine LinkedList sortieren. Ich habe schon einige Tutorials, Hinweise gesehen mit Hilfe des IComparer & IComparable, nur leider bietet die LinkedList keine Sort Funktion an, wo ich einen Comparer übergeben kann.

29.1.3 IComparer als Eigenschaft
http://www.galileocomputing.de/openbook/csharp/

So würde ich es gerne lösen. Nur verwende ich eben kein Array.Sort(...) sondern will das mit einer LinkedList machen!

Fragen an euch ist jetzt, geht das überhaupt, gibt es bessere Lösungen, wenn ja wie!
Wie gesagt, wichtig ist mir, ich brauche ein LinkedList!

lg horstl
 
Hallo,

schau mal hier:
C#:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace De.Tutorials.Training
{
    public class ListSortExample
    {
        public static void Main(string[] args)
        {
            ICollection<string> list = new LinkedList<string>();
            list.Add("ZZZ");
            list.Add("BBB");
            list.Add("AAA");
            list.Add("CCC");

            foreach (string item in from entry in list orderby entry select entry)
            {
                Console.WriteLine(item);
            }
        }
    }
}

Ausgabe:
Code:
AAA
BBB
CCC
ZZZ

Gruß Tom
 
Hallo,

ich hab nirgendwo ein Verbot für Linq gesehen ;-)

Dann eben so:
C#:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace De.Tutorials.Training
{
    public class ListSortExample
    {
        public static void Main(string[] args)
        {

            ICollection<string> list = new LinkedList<string>();
            list.Add("ZZZ");
            list.Add("BBB");
            list.Add("AAA");
            list.Add("CCC");

            List<string> sortedList = new List<string>(list);
            sortedList.Sort();
            list = new LinkedList<string>(sortedList);

            foreach (string item in list)
            {
                Console.WriteLine(item);
            }
        }
    }
}

Gruß Tom
 

Neue Beiträge

Zurück