Netlogo:在海龟列表中搜索

时间:2017-03-07 18:26:16

标签: list netlogo

假设我有一个海龟列表,这个列表中的每个海龟都有一个自己的数字变量foo。如何在不迭代整个列表的情况下优雅地提取存储在foo中的最低值的乌龟?

提前谢谢!

埃里克。

3 个答案:

答案 0 :(得分:2)

如果您希望列表中的乌龟具有最低值foo,那么您可以按每个乌龟的foo值对海龟列表进行排序,然后选择第一只乌龟。名单。对于NetLogo v6.0来说(假设foo是一个龟自己的变量而turtle-list是你的海龟列表):

first sort-by[[t1 t2] -> [foo] of t1 < [foo] of t2] turtle-list

查尔斯

答案 1 :(得分:0)

它取决于上下文(列表是如何构建的,谁拥有它,它是如何构建的以及频率如何),但总的来说我将列表保存在它自己的全局/中龟拥有的变量然后使用原始&#39; min-one-of&#39;查询它。如果你给出了一个可重复的例子,我可以帮助你将它应用于代码,但是可以使用

globals [foo-list] 
;make foo-list;
let small_foo min-one-of [foo-list] 
show small_foo

答案 2 :(得分:0)

当你说你有一个&#39;列表&#39;海龟,你真的是指数据类型列表,还是你真的有一个agentset(这是一组海龟更常见的NetLogo构造)?如果您有代理集,请查看原始let small_foo agentsetname with-min [foo]的字典。你会想要一些像{{1}}

这样的结构