Questions tagged «sorting»

排序是将一些订单应用于项目集合的过程。


14
按键对字典排序
我想在Swift中对字典进行排序。我有一本字典,例如: "A" => Array[] "Z" => Array[] "D" => Array[] 等,我希望它像 "A" => Array[] "D" => Array[] "Z" => Array[] 等等 我在SO上尝试了许多解决方案,但没有人为我工作。我正在使用XCode6 Beta 5,在它上面有一些正在给编译器错误,在一些解决方案中有例外。因此,任何可以发布字典排序工作副本的人。

7
python是否有排序列表?
我所说的结构是: x.push()操作复杂度O(log n) O(log n)查找元素的复杂度 O(n)复杂度进行计算list(x)将被排序 我也有一个有关性能的相关问题list(...).insert(...),现在在这里。
128 python  list  sorting 


5
用(任意)字段名称对结构数组进行简单排序的最短方法是什么?
我只是有一个问题,我有一系列的结构,例如 package main import "log" type Planet struct { Name string `json:"name"` Aphelion float64 `json:"aphelion"` // in million km Perihelion float64 `json:"perihelion"` // in million km Axis int64 `json:"Axis"` // in km Radius float64 `json:"radius"` } func main() { var mars = new(Planet) mars.Name = "Mars" mars.Aphelion = 249.2 mars.Perihelion …
128 sorting  go 

13
如何对字符串列表进行数字排序?
我知道这听起来微不足道,但是我没有意识到sort()Python 的功能很奇怪。我有一个实际上是字符串形式的“数字”列表,因此我首先将它们转换为整数,然后尝试进行排序。 list1=["1","10","3","22","23","4","2","200"] for item in list1: item=int(item) list1.sort() print list1 给我: ['1', '10', '2', '200', '22', '23', '3', '4'] 我想要的是 ['1','2','3','4','10','22','23','200'] 我四处寻找与排序数字集相关的算法,但是我发现所有算法都涉及对字母数字集进行排序。 我知道这可能是个没有脑子的问题,但是google和我的教科书没有提供比该.sort()功能有用的功能。
127 python  sorting 

12
使用JavaScript Array.sort()方法进行改组是否正确?
我正在用他的JavaScript代码帮助某人,而我的眼睛被一段看起来像这样的部分所吸引: function randOrd(){ return (Math.round(Math.random())-0.5); } coords.sort(randOrd); alert(coords); 我的第一个想法是:嘿,这可能行不通!但是后来我做了一些实验,发现它确实至少提供了很好的随机结果。 然后,我进行了一些网络搜索,几乎在顶部找到了一篇文章,该文章是最不经意地被复制的。看起来像一个非常受人尊敬的网站和作者。 但是我的直觉告诉我,这一定是错误的。特别是由于ECMA标准未指定排序算法。我认为不同的排序算法将导致不同的不均匀混洗。一些排序算法甚至可能无限循环... 但是你觉得呢? 还有另一个问题……我现在将如何去衡量这种混洗技术的结果有多随机? 更新:我做了一些测量,并将结果发布在下面作为答案之一。

15
SQL存储过程中的动态排序
我过去花了数小时研究这个问题。在我看来,现代RDBMS解决方案应该解决此问题,但是到目前为止,我还没有发现任何能够真正解决我认为在任何具有数据库后端的Web或Windows应用程序中非常普遍的需求的东西。 我说的是动态排序。在我的幻想世界中,它应该像下面这样简单: ORDER BY @sortCol1, @sortCol2 这是新手SQL和存储过程开发人员在整个Internet论坛上给出的规范示例。“为什么这不可能?” 他们问。最终,总是有人总会向他们讲授存储过程的编译性质,一般的执行计划以及无法将参数直接放入ORDER BY子句的各种其他原因。 我知道你们中有些人已经在想:“那么,让客户来进行分类。” 自然,这会减轻数据库的工作量。在我们的案例中,我们的数据库服务器甚至在99%的时间内都不会汗水,甚至还不是多核的,也不是每6个月进行一次其他的系统架构改进。仅出于这个原因,让我们的数据库处理排序将不是问题。此外,数据库非常擅长分类。他们为此进行了优化,并且已经花了好几年的时间来实现它,其实现语言令人难以置信的灵活,直观和简单,最重要的是,任何初学者SQL编写者都知道如何做,更重要的是,他们知道如何进行编辑,进行更改,进行维护等。当您的数据库需要负担很多费用而您只想简化(并缩短!)开发时间时,这似乎是一个显而易见的选择。 然后是网络问题。我一直在使用JavaScript进行HTML表格的客户端排序,但是它们不可避免地不够灵活,无法满足我的需求,而且,由于我的数据库没有负担过多,并且可以非常轻松地进行排序,因此我很难证明重新编写或自己拥有JavaScript分选器所需的时间。服务器端排序通常也是如此,尽管它可能已经比JavaScript更受青睐。我不是特别喜欢DataSet开销的人,所以起诉我。 但这又回到了不可能的点,或者说不容易。对于以前的系统,我已经完成了一种获得动态排序的骇人听闻的破解方法。它不是很漂亮,也不是直观,简单或灵活的,初学者SQL编写器将在几秒钟内丢失。看起来这已经不是“解决方案”,而是“复杂性”。 以下示例无意提供任何种类的最佳实践或良好的编码风格,也不表示我作为T-SQL程序员的能力。它们就是它们的样子,我完全承认它们是令人困惑的,糟糕的形式,而且仅仅是简单的破解。 我们将一个整数值作为参数传递给存储过程(我们称该参数为“ sort”),然后从中确定一堆其他变量。例如...假设sort为1(或默认值): DECLARE @sortCol1 AS varchar(20) DECLARE @sortCol2 AS varchar(20) DECLARE @dir1 AS varchar(20) DECLARE @dir2 AS varchar(20) DECLARE @col1 AS varchar(20) DECLARE @col2 AS varchar(20) SET @col1 = 'storagedatetime'; SET @col2 = 'vehicleid'; IF @sort …

3
按字符串键order(-x,v)的降序对data.table中的行进行排序在data.table 1.9.4或更早版本上给出错误
比方说,我有以下data.table的R: library(data.table) DT = data.table(x=rep(c("b","a","c"),each=3), y=c(1,3,6), v=1:9) 我想按两列(例如x和v)进行排序。我用这个: DT[order(x,v)] # sorts first by x then by v (both in ascending order) 但是现在,我想按x(降序)对其进行排序,并具有以下代码: DT[order(-x)] #Error in -x : invalid argument to unary operator 因此,我认为此错误是由于事实class(DT$x)=character。为了解决这个问题,您能给我什么建议吗? 我知道我可以使用DT[order(x,decreasing=TRUE)],但是我想知道语法同时使用两种方式(有些减少,有些增加)按几列排序。 请注意,如果使用DT[order(-y,v)]结果还可以,但是如果使用DT[order(-x,v)],则会出现错误。所以,我的问题是:如何解决这个错误?
125 r  string  sorting  data.table  key 

2
使用其构造函数初始化OrderedDict的正确方法,使其保留初始数据的顺序?
初始化有序词典(OD)以便保留初始数据顺序的正确方法是什么? from collections import OrderedDict # Obviously wrong because regular dict loses order d = OrderedDict({'b':2, 'a':1}) # An OD is represented by a list of tuples, so would this work? d = OrderedDict([('b',2), ('a', 1)]) # What about using a list comprehension, will 'd' preserve the order of 'l' …

3
Django admin:如何按没有数据库字段的自定义list_display字段之一进行排序
# admin.py class CustomerAdmin(admin.ModelAdmin): list_display = ('foo', 'number_of_orders') # models.py class Order(models.Model): bar = models.CharField[...] customer = models.ForeignKey(Customer) class Customer(models.Model): foo = models.CharField[...] def number_of_orders(self): return u'%s' % Order.objects.filter(customer=self).count() 如何根据客户对客户进行分类number_of_orders? admin_order_field属性不能在这里使用,因为它需要一个数据库字段进行排序。由于Django依赖底层数据库执行排序,这有可能吗?创建一个包含订单数量的汇总字段似乎在这里是过大的。 有趣的是:如果您在浏览器中手动更改url以在此列上进行排序-它将按预期工作!

7
按字母顺序对arraylist排序(不区分大小写)
我有一个names包含人名的字符串arraylist 。我想按字母顺序对arraylist进行排序。 ArrayList<String> names = new ArrayList<String>(); names.add("seetha"); names.add("sudhin"); names.add("Swetha"); names.add("Neethu"); names.add("ananya"); names.add("Athira"); names.add("bala"); names.add("Tony"); names.add("Karthika"); names.add("Nithin"); names.add("Vinod"); names.add("jeena"); Collections.sort(names); for(int i=0; i<names.size(); i++) System.out.println(names.get(i)); 我试图以上述方式对列表进行排序。但是它将排序后的数组显示为: Athira Karthika .. .. ananya bala ... 但我不想区分大小写。我想要的结果是: ananya Athira bala
121 java  sorting  arraylist 

9
有效地对numpy数组进行降序排序?
令我惊讶的是,之前没有提出过这个具体问题,但是我真的没有在SO或文档中找到它np.sort。 假设我有一个包含整数的随机numpy数组,例如: > temp = np.random.randint(1,10, 10) > temp array([2, 4, 7, 4, 2, 2, 7, 6, 4, 4]) 如果对它进行排序,则默认情况下我将获得升序: > np.sort(temp) array([2, 2, 2, 4, 4, 4, 4, 6, 7, 7]) 但我希望解决方案按降序排序。 现在,我知道我可以永远做: reverse_order = np.sort(temp)[::-1] 但这最后的陈述有效吗?它不是按升序创建副本,然后反转此副本以反转顺序获得结果吗?如果确实如此,是否有有效的选择?看起来好像不np.sort接受参数来更改排序操作中的比较符号以使事情相反。
121 python  arrays  sorting  numpy 

16
如何在多列上对数组排序?
我有一个多维数组。主数组是一个数组 [publicationID][publication_name][ownderID][owner_name] 我想做的是先对数组进行排序owner_name,然后再对进行排序publication_name。我知道在JavaScript中有Array.sort(),您可以在其中放入自定义函数,以我为例: function mysortfunction(a, b) { var x = a[3].toLowerCase(); var y = b[3].toLowerCase(); return ((x < y) ? -1 : ((x > y) ? 1 : 0)); } 这是刚刚排序的一列,即OWNER_NAME很好,但我怎样修改它进行排序owner_name,然后publication_name?

4
如何按哈希中的值对哈希数组进行排序?
这段Ruby代码的行为并不像我期望的那样: # create an array of hashes sort_me = [] sort_me.push({"value"=>1, "name"=>"a"}) sort_me.push({"value"=>3, "name"=>"c"}) sort_me.push({"value"=>2, "name"=>"b"}) # sort sort_me.sort_by { |k| k["value"]} # same order as above! puts sort_me 我正在寻找通过键“值”对哈希数组进行排序的方法,但是它们是按未排序方式打印的。
119 ruby  arrays  sorting  hash 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.