- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
假设我有以下结构:
mutable struct Car
load
locale
availability
odometer
end
我创建了一个数组:
fleet = Vector{Car}(undef, num_cars)
for i in 1:num_cars
a, b, c, d = rand(4)
fleet[i] = Car(a, b, c, d)
end
例如,如何从数组中所有汽车的里程表中找到最小值(使用 findmin
或类似值)或最大值(使用?)?
基本上,我希望能够对结构数组使用条件语句,例如:对于我的结构数组中的每个元素,获取数据满足条件的元素,并从中获取另一个数据的最小值。
谢谢!
最佳答案
找到最小值非常简单,使用 minimum
函数和一个映射参数:
julia> minimum(x->x.odometer, fleet)
0.08468003971220694
如果您还想要最小值的索引,可以使用findmin
函数。不幸的是,出于某种原因,这不支持函数参数,因此您必须创建一个临时数组,并将 findmin
应用于该数组:
julia> findmin(getfield.(fleet, :odometer))
(0.08468003971220694, 1)
您也可以使用 getproperty
而不是 getfield
,它们对您的结构做同样的事情,我不确定哪个更可取。可能,最惯用的解决方案是定义访问器函数而不是直接使用字段值。例如:
odometer(car::Car) = car.odometer
minimum(odometer, fleet)
findmin(odometer.(fleet))
对于最大值,使用maximum
和findmax
。
关于arrays - 在由可变结构元素组成的数组中的数据中使用 findmin() - Julia,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60937600/
我在二叉搜索树的延迟删除中找到了 findMIn 方法的代码。首先,这个方法正确吗?如果是的话请有人给我解释一下。 private BinaryNode findMin( BinaryNode t )
假设我有以下结构: mutable struct Car load locale availability odometer end 我创建了一个数组: fleet =
我已经用 java 编写了一个标准的哈希表类。它有大量的桶,要插入、检索或删除元素,我只需计算元素的哈希值并查看数组中的适当索引以获得正确的桶。 但是,我想实现某种迭代器。除了遍历数组中的所有索引并忽
所以我对用 C 语言编写的选择排序有疑问。当在一个函数中实现时,我可以让选择排序发挥作用。但是,当我执行作业要求的操作并使用返回数组的最小索引的 findMin 函数时,它不会完全对其进行排序。我尝试
我已经看到这个问题的两个堆栈实现,但我真的很困惑如何获得 O(1) 操作。考虑以下示例: S1[3542761986759] S2[3332221111111] 这里的思路/算法是 将元素E推送到S1
我是一名优秀的程序员,十分优秀!