NP,NP-Complete和NP-Hard有什么区别?
我知道网上有很多资源.我想阅读你的解释,原因是它们可能与那些不同,或者有些东西我不知道.
谁可以给我解释一下这个?首先,我知道为什么这个代码
String getName(){
for(;;){}
}
Run Code Online (Sandbox Code Playgroud)
将违反return类型方法:它是无限的,但为什么这段代码需要最终的返回值?
String getName(){
for(;i < limit; i++){// i is already defined
if(someArrayList.get(i).isDead)
continue;
return someArrayList.get(i).name;
}
//needs a final return
}
Run Code Online (Sandbox Code Playgroud)
返回值存在于循环内部并返回getName()方法的值,那么原因是什么?另一篇文章建议,如果循环对我的条件是负面的,那么我用这样重写:
String getName(){
for(; i < 10; i++){// i is already defined
if((i+1) == limit){
if(!someArrayList.get(i).isDead)
return "";
}else{
if(someArrayList.get(i).isDead)
continue;
return someArrayList.get(i).name;
}
}
// needs a final return
}
Run Code Online (Sandbox Code Playgroud)
相同的编译时错误,即使我i在for循环条件中重新定义0,所以我i变为零,如果内部条件检出否定我自己处理它.总而言之,如果我将它嵌套在无限循环中,那就没关系.
String getName(){
for(;;){
for(; i < limit; i++){// …Run Code Online (Sandbox Code Playgroud)