distinct 排序_自己造一个排序算法 - Go语言中文社区

distinct 排序_自己造一个排序算法


7bedad6db606ccb9a3042fd2ebf25402.png

1.朴素的DIY排序

DIY 

公式解读:

rankx_table :造一个需要参考表,有两列,一列是【品牌】,另一列是品牌的销量

VAR x : 获得当前上下文【品牌】(指表格的行)的销量[sum of sales]****

VAR r : 计算rankx_table中比 x(当前品牌)等于或大于销量的品牌有多少个,即是计数

98c702ff5c9e79cdc28d3329c6776c83.png

2.多层级排序

Rankx 

eabd2eb9608c22c930b96baff620576a.png

可以看到DIY排序与rankx还是有区别的:

4b60d57416ca710dde19fddc243eb23f.png

3.DIY紧排序算法

再一次修正上面的公式,达到RANKX紧排序算法:

紧排序:相同名次后一个排序跟上排序 1、2、2、3;

松排序:相同名次的后一个排序跳过 1、2、2、4

DIY 

VAR dis_table 将sell列去除重复值,然后与当前值比较再进行计数,达到排名的目的

aaa6deec10200a1dd710c68751166c64.png

4.DIY 松排序法

DIY 

VAR number_table 求得大于当前值的一个表,然后VAR r 加回1即是当前松排序的排名

f0d6f0cb473336e6fc733d44a76ba7f1.png
版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/weixin_39770506/article/details/110637219
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2021-06-26 17:01:15
  • 阅读 ( 670 )
  • 分类:算法

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢