Was ist der beste Weg, um eine Liste mit C # numerisch zu sortieren? Meine Liste enthält die Punkte 5,7,3 und ich möchte, dass sie 3,5,7 sortiert sind. Ich kenne einige längere Wege, aber ich würde mir vorstellen, dass linq einen schnelleren Weg hat?
Es tut mir leid, dass dies das Ende des Tages war. Meiner Meinung nach hat es anderswo funktioniert. Ich habe nicht gesehen, dass es sich beim ersten Mal geändert hat :(
Antworten:
Hier ist LINQ nicht erforderlich. Rufen Sie einfach Sortieren auf:
Beispielcode:
List<int> list = new List<int> { 5, 7, 3 }; list.Sort(); foreach (int x in list) { Console.WriteLine(x); }
Ergebnis:
3 5 7
quelle
Einfach zu halten ist der Schlüssel.
Versuchen Sie es unten.
var values = new int[5,7,3]; values = values.OrderBy(p => p).ToList();
quelle
var values = new int[] {5,7,3}; var sortedValues = values.OrderBy(v => v).ToList(); // result 3,5,7
quelle
List<int> list = new List<int> { 5, 7, 3 }; list.Sort((x,y)=> y.CompareTo(x)); list.ForEach(action => { Console.Write(action + " "); });
quelle
Sortieren Sie eine Liste absteigender Ganzzahlen
class Program { private class SortIntDescending : IComparer<int> { int IComparer<int>.Compare(int a, int b) //implement Compare { if (a > b) return -1; //normally greater than = 1 if (a < b) return 1; // normally smaller than = -1 else return 0; // equal } } static List<int> intlist = new List<int>(); // make a list static void Main(string[] args) { intlist.Add(5); //fill the list with 5 ints intlist.Add(3); intlist.Add(5); intlist.Add(15); intlist.Add(7); Console.WriteLine("Unsorted list :"); Printlist(intlist); Console.WriteLine(); // intlist.Sort(); uses the default Comparer, which is ascending intlist.Sort(new SortIntDescending()); //sort descending Console.WriteLine("Sorted descending list :"); Printlist(intlist); Console.ReadKey(); //wait for keydown } static void Printlist(List<int> L) { foreach (int i in L) //print on the console { Console.WriteLine(i); } } }
quelle
Sortierliste von int absteigend Sie können einfach zuerst sortieren und umgekehrt
class Program { static void Main(string[] args) { List<int> myList = new List<int>(); myList.Add(38); myList.Add(34); myList.Add(35); myList.Add(36); myList.Add(37); myList.Sort(); myList.Reverse(); myList.ForEach(Console.WriteLine); } }
quelle
double jhon = 3; double[] numbers = new double[3]; for (int i = 0; i < 3; i++) { numbers[i] = double.Parse(Console.ReadLine()); } Console.WriteLine("\n"); Array.Sort(numbers); for (int i = 0; i < 3; i++) { Console.WriteLine(numbers[i]); } Console.ReadLine();
quelle