|
杯具,才发现还真有映射功能,太久没摸都忘了。10.5.15
论坛里面有很多朋友在问如果从数列中去除重复数据,我以前都建议用代码,昨天看了大川的sort大法,颇感动,山寨猥琐的力量实在强大。不过大川的sort大法排除了重复数据的同时,也打乱了原有顺序,不过大川有一句话很有道理“如果sort list运算器有与原数列相映射的功能就好了”,在这里我想了很多烂招,构思了一个以图形思维来处理的办法,貌似可以完美的解决顺序问题了(吧),在保持顺序的情况下,对于每种重复数据只保留其中的第一个。
由于曲线交点运算器貌似在极小尺度下失效,所以我在中间过程统一将数据扩大了10的N次方倍数,N=数列中小数点后的位数的最大值,最后再返回原来的数据。然后将圆圈半径设为0.5,不至失效,也满足相互不相交。
第二是为了避免不应出现的线和圆圈的相交关系,将两行点之间的距离定位两行各自总长的较大者,使得直线倾角必然大于45度,因为小于30度的话在整数情况下会与旁边的圆相交。
另外逻辑过程中还应注意tree数据的层级概念和枝条概念,直线与直线上的点的代数性质和几何性质等等。相信每一个学过初中数学、熟知GH理念的人都有能力看懂。不过由于确实思维来回转换多次表述起来有点麻烦。请大家有兴趣的话参考图和GHX文件。
用纯运算器来解决这个问题算看起来是有点荒唐,不过在这里希望鼓励大家开动思维,避免思维被软件的典型技法所禁锢,所以抛砖引玉,希望有更好更有趣的办法。
|
-
-
去除重复数据.rar
52.58 KB, 阅读权限: 10, 下载次数: 638, 下载积分: 照度 -1 lux
评分
-
查看全部评分
|