List<decimal> FindSumSubset(decimal sum, List<decimal> list)
{
for (int i = 0; i < list.Count; i++)
{
decimal value = list[i];
if (sum - value == 0.0m)
{
return new List<decimal> { value };
}
else
{
var subset = FindSumSubset(sum - value, list.GetRange(i + 1, list.Count -i));
if (subset != null)
{
return subset.Add(value);
}
}
}
return null;
}
Run Code Online (Sandbox Code Playgroud)
我在这一行上收到错误:
return subset.Add(value);
Run Code Online (Sandbox Code Playgroud)
错误:
Error 1 Cannot implicitly convert type 'void' to 'System.Collections.Generic.List<decimal>'
Run Code Online (Sandbox Code Playgroud)
有谁知道我怎么解决这个>?
subset.Add(value);
return subset;
Run Code Online (Sandbox Code Playgroud)
您的问题与通用列表无关.该Add方法仅更改列表,但确实返回void /不返回任何内容.因此,您需要使返回成为单独的语句,并且不能链接方法调用.
| 归档时间: |
|
| 查看次数: |
184 次 |
| 最近记录: |