gpt4 book ai didi

algorithm - 实现此算法的最佳方法是什么?

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:40:05 25 4
gpt4 key购买 nike

编写如下算法的最佳方法是什么:

if (a) {
doA();
done();
}
else if (b) {
doB();
done();
}
else if (c) {
doC();
done();
}

我想到的另一种方法:

done = true;
if (a) {
doA();
}
else if (b) {
doB();
}
else if (c) {
doC();
}
else {
done = false;
}
if (done) {
done();
}

哪个更好?还有其他最佳方法吗?

最佳答案

在没有任何上下文的情况下,对我来说最自然的方式是:

bool do_it(int condition)
{
switch (condition)
{
case a: doA(); return true;
case b: doB(); return true;
case c: doC(); return true;
default: return false;
}
}

// ...

if (do_it) done();

因为它抽象了“如果这一切都成功了,那么就调用done()”的逻辑。

但是还有许多其他方法可以做到这一点。特别是,如果 future 条件的数量可能会增加,我根本不会这样做。

关于algorithm - 实现此算法的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5567235/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com