谁能教我如何在C#中按字母顺序将项目插入列表中?
因此,每次我添加到列表中时,我想按字母顺序添加一个项目,理论上,列表可能会变得非常大。
示例代码:
Public Class Person
{
public string Name { get; set; }
public string Age { get; set; }
}
Public Class Storage
{
private List<Person> people;
public Storage
{
people = new List<Person&g
我是C#的新手,正在尝试创建一个MP3播放器。我对播放列表使用了sortedList (歌曲名称作为关键字,文件路径作为值),但是我不确定如何随机化混洗的列表顺序。
我尝试过这种方法,但它没有产生任何新的顺序,而且它从列表中删除了一首歌,嘿。
private SortedList Shuffle(SortedList oldSongList)
{
SortedList newSongList = new SortedList();
Random r = new Random();
int n = oldSongList.Count;
while (n >
我有一组(完全)有序的OrderedObject类对象
public class OrderedObject {
public int ord; // ordinal number
}
它们有一个类型为ord的字段int,它对每个对象都是唯一的,并表示它们的序号。然而,对于每个对象,ord的值可能有所不同。我希望将这些对象存储在Dictionary<int*, OrderedObject>中,以便键(星号表示指向int的指针,不确定如何使用C#实现该目标,但这不是我的问题)指向值对象的序号,并随后者自动更改。,这有可能吗?
对于那些认为我的任务没有什么意义的人
创建了一个SQL Server 2008数据库和表,该数据库和表具有名为“坐标”、类型为“geography”的属性。在VS2012中创建了一个项目,添加了对Microsoft.SqlServer.Types和EF V5的引用。然后,使用ADO.NET实体数据模型向导生成edmx。当我在VS2012中编译时,我得到了以下错误:
Error 4 Error 129: The property 'Coordinates' in EntityType 'DBModel.GeoDestination' is not valid. EntityKey proper
我正在使用Python的SortedDict容器来解决一个问题,我想知道获取最高键的时间复杂度是多少:
from sortedcontainers import SortedDict
treeMap = SortedDict()
treeMap[1] = [4]
treeMap[1].append(6)
treeMap[3] = [9]
print(treeMap.keys()[-1]) # get the highest key in the sorted dictionary, should be 3
我知道SortedDict中的大多数操作都是O(log(n)),但我对treeMap.k
在C#中有没有排序列表,允许我们在添加元素的同时进行排序?我的意思是,我不想要一个有.Sort()方法的List,而是一个在我将条目添加到List中时,List实际上会将它们放在正确的位置(我猜在内部它会有某种树)。
以下是我的场景:
class Worker {
...some fields
public int salary;
}
我想将工人添加到我的列表中,并根据他们的工资对他们进行排序。然后我想做一个清单,知道那个工人是工资最高的那个。然后做list1,知道那将是薪水第二高的那个,等等。
在C#中有什么数据结构可以做到这一点吗?
谢谢