草庐IT

桶排序

全部标签

google-app-engine - Go中的字母数字排序

我正在从GAE数据存储中读取行,我想按字母数字顺序对它们进行排序。假设我有这样的东西:keynamedescriptionsequence===========================================ASD..maths1itismathschap21.1ASD..maths2itismathschap21.10ASD..maths3itismathschap21.2我希望结果在序列字段上按字母数字排序,如下所示:keynamedescriptionsequence===========================================ASD..m

algorithm - 按升序对 "d.mm"和 "dd.mm"日期进行排序

我有varkeys[]string。键表示格式为"D.MM"或"DD.MM"的日期和月份。例如:1.02(2月1日)-2.02(2月2日)-1.03(3月1日)-3.02(2月3日)-31.12(12月31日)我需要按如下方式对键进行排序:['1.02','2.02','3.02','1.03','31.12']。首先是月份,然后是月份中的几天。我首先尝试将字符串解析为float64数字,因为我认为使用数字会更容易(请参阅评论),但它似乎最糟糕。我怎样才能做到这一点? 最佳答案 我想您需要一个Go程序。检查thisone:packa

go - go 编译器可以重新排序以下代码吗?

最近,我发现一些代码看起来像这样:varmmap[int]intfuncwritem(){tmpm:=make(map[int]int)fori:=0;i这个程序运行良好,但我认为可以通过在for循环之前移动m=tmpm来重新排序writem函数体,因为这不会改变行为在这个goroutine中。而这种重新排序会导致并发映射读取和映射写入问题。作为GoMemoryModel说:compilersandprocessorsmayreorderthereadsandwritesexecutedwithinasinglegoroutineonlywhenthereorderingdoesnot

mongodb - 过滤集合但按内部属性排序

考虑到我有如下的文档集合,我想获取如下返回的信息:从campaignID=12的事件中选择所有条目,按entries.questionscorrect降序排序,限制为10。我已经对一些查询进行了尝试,但我似乎陷入了这样一个事实,即我在一个级别上进行选择,但想在较低级别(即属性)上订购。这是我目前所拥有的:db.getCollection('main').find({"id":4},{"entries":1}).sort({"questionscorrect":-1}).limit(2)请问我如何用Go(Mgo)语法或直接的MongoDB查询来编写它?我不断收到返回的信息,但按数量排序{

属性数组上的JavaScript排序阵列

因此,我有这些看起来像这样的用户:[{userName:'Jim',roles:['Member']},{userName:'Adam',roles:['Administrator']},{userName:'Suzy',roles:['SuperUser']},{userName:'Greg',roles:['SuperUser']},{userName:'Ady',roles:['Administrator']},{userName:'Jeremy',roles:['Administrator']}]我想根据其角色对此数组进行排序。我尝试这样做:items.sort(function(a,

sorting - go type conversion - 使用共享接口(interface)对 2 片不同的接口(interface)进行排序

下面的示例包含2个接口(interface)Foo和Bar,它们都实现了相同的接口(interface)Timestamper。它还包含实现sort.Interface的类型ByTimestamp.如函数main所示,我想使用类型ByTimestamp对Foo的slice和slice进行排序条形图。但是,代码将无法编译,因为它无法将foos(类型[]Foo)转换为ByTimestamp类型,并且无法将bars(类型[]Bar)转换为ByTimestamp类型。是否可以使用实现sort.Interface的单一类型对实现相同接口(interface)的2个不同接口(interface)s

go - mgo 是否具有从查询结果中为每个文档的特定 Slice 字段排序的功能?

我不是在谈论如何对result进行排序。我知道!它是result中我想要按特定顺序排序的字段之一。假设我们有一个由mgo查询返回的result:=[]A{}:typeAstruct{IstringII[]B}typeBstruct{XstringXXint}在那个result中,我希望每个result[i].II按B.XX排序我要问的是,我能否通过mgo完成这种排序,或者我必须循环result并对A.II进行排序自己? 最佳答案 有一种方法可以使用聚合引擎来完成。$匹配你想要的文件$project你想要的字段$展开slice$使用i

go - 如何使用 minio-go api 从 s3 存储桶中获取按最后修改时间戳排序的对象列表?

我浏览了minio-go-api.的文档但是没有得到任何解决方案,因为对象是根据字母顺序排序的。一种hack方式,将首先读取所有对象,然后从每个对象中获取最后修改日期并形成新列表,这对于生产根本不可行 最佳答案 @SiddhantaRath,处理此问题的一种方法是使用mc工具。命令mcfind--newer和mcfind--older将处理此问题。但在内部,它会执行listObjects并为您进行排序。另一种方法是订阅通知并确保数据库中有一个已上传对象的列表。 关于go-如何使用mini

go - 按时间戳对 Firebase 查询进行排序似乎返回 0 个结果 [go programming language]

问题概述:我正在使用UserID==字符串查询“session”集合以获取session,这工作正常。但是当我尝试使用时间戳类型的OrderBy("DateCreated",Desc)时,我得到0个结果我尝试过的:我已经检查了数据库和我正在使用的名为“DateCreated”的属性,它是一种有效的时间戳类型。所有session数据均在随机日期范围内生成。当前结果:返回100个结果(正确)firstSessionQuery:=db.Collection("session").Where("UserID","==",uid).Documents(ctx)返回0个结果VS100个(不正确)f

mysql - 使用错误的排序规则连接到 mysql 服务器?

我有一个Golang程序,它可以连接到具有不同字符集或排序规则的数据库。例如,在编写GolangMYSQL驱动程序时默认为utf8mb4_general_cihttps://github.com/go-sql-driver/mysql#collation但是,如果我连接到这样配置的数据库:CREATEDATABASEexamplecharactersetutf8mb4collateutf8mb4_unicode_ci;我可以预料“坏事会发生”吗?索引不起作用? 最佳答案 在大多数情况下,没有问题。例如,当使用WHEREcolumn=