我需要一个像a一样的数据结构,SortedDictionary<int, double>但是根据值而不是键来排序.当我们在字典中有大约3000个项目时,我需要大约1-2微秒来添加和删除项目.
我的第一个想法是简单地在我的代码中切换键和值.这几乎是有效的.通过这样做,我可以在测试中添加和删除元素大约1.2微秒.
但是键必须在SortedDictionary中是唯一的,这意味着我的逆字典中的值必须是唯一的.在某些情况下,他们可能不会.
.NET库中的某些想法已经对我有用吗?
我有一个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) 我有一个“活动”类型的列表。我需要找到该列表中出现次数最多的元素。例如:
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) 我有这本词典
Dictionary<Guid, DateTime> myDic = new Dictionary<Guid, DateTime>();
Run Code Online (Sandbox Code Playgroud)
使用DateTime对DESC进行排序的最佳方法是什么?是LINQ吗?
如何在代码中完成?
谢谢!
我有一个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)