0
我有一個Person
對象的列表。每個人都有一個人名單作爲財產。這是班級。使用LINQ計算樹中符合條件的所有元素
public class Person
{
public List<Person> Team { get; set; }
public string Status {get; set;}
}
所以每個人都有父母,子女的名單,和狀態。
我需要計算在給定人的樹中狀態等於"X"
或"Y"
的次數。我被告知我可以使用.Aggregate()
函數,但我不知道我會怎麼做。
例如,如果一個人有3人名單全部用狀態"X"
而且每個人的有3人,2狀態"X"
和1的狀態"Z"
名單,這將是12人總及計數的"X"
將9
對於樹(這是一種遞歸數據結構),您應該考慮使用遞歸方法來瀏覽它。 Linq更適合順序結構,或在樹中達到特定深度(實際上是一種順序導航)。 – Kryptos
你的圖是循環的嗎? – Servy
@Servy假設OP使用正確的術語「樹」,那麼根據定義樹就是非循環的。 – dcastro