Tag: sorting

如何sorting一个IEnumerable <string>

如何按字母顺序sortingIEnumerable<string> 。 这可能吗? 编辑:我将如何编写一个就地解决scheme?

如何通过依赖sorting依赖的对象

我有一个集合: List<VPair<Item, List<Item>> dependencyHierarchy; 对中的第一个项目是某个对象(item),第二个项目是第一个依赖的相同types对象的集合。 我想按照依赖的顺序得到一个List<Item> ,所以没有依赖于第一个元素等等的东西(没有循环依赖!)。 input: Item4取决于Item3和Item5 Item3取决于Item1 Item1不依赖于任何一个 Item2取决于Item4 Item5不依赖于任何一个 结果: 项目1 项目5 项目3 项目4 项目2 谢谢。 解: 拓扑sorting (感谢LoïcFévrier的想法) 和 在C#上的 例子,在Java 上的 例子 (感谢xcud的伟大的例子)

Python:如何sorting几个值的字典列表?

我想首先按值sorting,然后按第二个值sorting。 是否有捷径可寻? 这是一个小例子: A = [{'name':'john','age':45}, {'name':'andi','age':23}, {'name':'john','age':22}, {'name':'paul','age':35}, {'name':'john','age':21}] 这个命令是用'name'对这个列表进行sorting'name' : sorted(A, key = lambda user: user['name']) 但是我怎么能通过第二个值来sorting这个列表呢? 像这个例子中的'age'一样。 我想要这样的sorting(首先按'name'sorting,然后按'age'sorting): andi – 23 john – 21 john – 22 john – 45 paul – 35 谢谢!

linux命令:SORT,根据字段的数值

例如: File.txt的内容: 100 foo 2 bar 300 tuu 当使用'sort -k 1,1 File.txt'时,行的顺序不会改变,但我们期待: 2 bar 100 foo 300 tuu 我们如何根据绝对数值对数字进行sorting呢?

带有下划线sortBy的对象sorting数组

我有这个数组。 如何使用下划线“_.sortBy”按照开始date对其进行sorting? [ { id: 'oljw832021kjnb389xzll323jk', start: { dateTime: '2013-09-26T13:30:00-07:00' }, end: { dateTime: '2013-09-26T14:30:00-07:00' }, }, { id: 'ed7l5tmckdp0lm90nvr4is3d4c', start: { dateTime: '2013-09-26T15:30:00-07:00' }, end: { dateTime: '2013-09-26T16:30:00-07:00' }, }, { id: 'etmasdsackdp0kjl0nvrkopioqw', start: { dateTime: '2013-09-26T18:00:00-07:00' }, end: { dateTime: '2013-09-26T19:00:00-07:00' }, } ]

为什么SortedSet <T> .GetViewBetween不是O(log N)?

在.NET 4.0+中,类SortedSet<T>具有一个名为GetViewBetween(l, r) ,该方法返回包含指定的两个值之间的所有值的树部分的接口视图。 鉴于SortedSet<T>被实现为红黑树,我自然希望它在O(log N)时间运行。 在C ++中类似的方法是std::set::lower_bound/upper_bound ,在Java中它是TreeSet.headSet/tailSet ,它们是对数的。 但是,这不是事实。 下面的代码在32秒内运行,而等价的GetViewBetween O(log N)版本将使这个代码在1-2秒内运行。 var s = new SortedSet<int>(); int n = 100000; var rand = new Random(1000000007); int sum = 0; for (int i = 0; i < n; ++i) { s.Add(rand.Next()); if (rand.Next() % 2 == 0) { int l = rand.Next(int.MaxValue / […]

为什么Collections.sort使用Mergesort但Arrays.sort不?

我正在使用JDK-8(x64)。 对于Arrays.sort我在Java文档中find了以下内容: sortingalgorithm是由Vladimir Yaroslavskiy,Jon Bentley和Joshua Bloch提供的Dual-Pivot Quicksort 。 对于Collections.sort我发现这个: 这个实现是一个稳定的,自适应的,迭代的mergesort …这个实现把指定的列表转储到一个数组中,对数组进行sorting ,然后对列表进行迭代,以重置数组中相应位置的每个元素。 如果Collections.sort使用数组,为什么不调用Arrays.sort或使用双枢轴QuickSort ? 为什么使用Mergesort ?

什么是sortingNSSet最有效的方法?

根据集合中对象的属性,在NSSet / NSMutableSetsorting对象的最有效方法是什么? 现在我正在做的方式是遍历每个对象,将它们添加到一个NSMutableArray ,并用NSSortDescriptorsorting该数组。

为了在ElasticSearch中进行sorting,没有find字段的映射

Elasticsearch在parsing查询的时候抛出一个SearchParseException ,如果在sorting条件中发现某些文档没有包含字段。 SearchParseException:parsing失败[未find[价格]的映射,以进行sorting] 我怎样才能成功地search这些文件,即使有些缺lessprice字段?

为什么Collections.sort使用合并sorting而不是快速sorting?

我们知道快速sorting是最好的sortingalgorithm。 collections.sort使用合并sortingalgorithm而不是快速sorting。 但是Arrays.sort使用快速sorting。 Collections.sort使用合并sorting而不是快速sorting的原因是什么?