相关疑难解决方法(0)

.NET SortedDictionary但按值排序

我需要一个像a一样的数据结构,SortedDictionary<int, double>但是根据值而不是键来排序.当我们在字典中有大约3000个项目时,我需要大约1-2微秒来添加和删除项目.

我的第一个想法是简单地在我的代码中切换键和值.这几乎是有效的.通过这样做,我可以在测试中添加和删除元素大约1.2微秒.

但是键必须在SortedDictionary中是唯一的,这意味着我的逆字典中的值必须是唯一的.在某些情况下,他们可能不会.

.NET库中的某些想法已经对我有用吗?

.net c# collections dictionary sorteddictionary

6
推荐指数
1
解决办法
5891
查看次数

基于值而不是键对SortedDictionary进行排序

我有一个SortedDictionary,键是一个int值,每个键的匹配值是一个类对象.该类包含一个int和一个两个datetime变量.

我需要根据我班级的InTime日期时间对SortedDictionary进行排序.因此,当我做一个foreach循环我的SortedDictionary时,我会根据日期时间对它们进行排序.

这可能吗?我怎样才能实现它?

enter code here
 class Busdetail
    {
        public int BusNo { get; set; }
        public DateTime InTime { get; set; }
        public DateTime OutTime { get; set; }
    }
Run Code Online (Sandbox Code Playgroud)

c#

4
推荐指数
1
解决办法
2万
查看次数

C#:获取列表中出现次数最多的元素?

我有一个“活动”类型的列表。我需要找到该列表中出现次数最多的元素。例如:

Activity a = new Activity();
a.Location = "USA";

Activity b = new Activity();
b.Location = "Sri Lanka";

Activity b = new Activity();
b.Location = "USA";

List<Activity> activityList = new List<Activity>();
activityList.add(a);
//......adding the rest of the objects as well.
Run Code Online (Sandbox Code Playgroud)

现在我需要找到这个列表中出现次数最多的位置。例如,上例中出现次数最多的 Location 是:USA。

我试过这个:

            String currentLocation = "";
            String mostOccurring = "";
            int currentCount = 0;
            int highest = 0;

            for (int i = 0; i < activityList.Count; i++)
            {
                currentLocation = activityList[i].Location;

                foreach (Activity activity in activityList)
                {
                    if …
Run Code Online (Sandbox Code Playgroud)

.net c# asp.net loops list

4
推荐指数
1
解决办法
2788
查看次数

如何按DateTime值对字典进行排序

我有这本词典

Dictionary<Guid, DateTime> myDic = new Dictionary<Guid, DateTime>();
Run Code Online (Sandbox Code Playgroud)

使用DateTimeDESC进行排序的最佳方法是什么?是LINQ吗?

如何在代码中完成?

谢谢!

.net c# linq dictionary

3
推荐指数
2
解决办法
7668
查看次数

c#Dictionary <char,int>选择具有最大值的键

我有一个Dictionary<char, int> charstat可以计算一个角色的出现次数.我想从这本词典中获得5个最常见的字符数.如何做到这一点.

一些示例数据:

 <'T', 1>
 <'A', 2>
 <'C', 5>
 <'Q', 10>
 <'B', 3>
 <'Z', 7>
Run Code Online (Sandbox Code Playgroud)

从这里我想得到最大数量的顺序:

Q
Z
C
B
A
Run Code Online (Sandbox Code Playgroud)

c# sorting dictionary

0
推荐指数
1
解决办法
2536
查看次数

标签 统计

c# ×5

.net ×3

dictionary ×3

asp.net ×1

collections ×1

linq ×1

list ×1

loops ×1

sorteddictionary ×1

sorting ×1