我有一棵树有结构。我需要找到最大数量的min(给定)。
Item this_word (link h, int max){
Item word;
if (h == NULL)
return 0;
if (h->item->acc == max){
word = h->item;
this_word(h->l, max);
}
else{
this_word(h->l, max);
this_word(h->r, max);
}
return word;
}
但是我遇到了分段错误..
答案 0 :(得分:0)
h!= NULL
和h->item->acc == max
成立时,您的代码会出现段错误。在这种情况下,执行else分支并返回word,之前没有设置。您可以通过为单词正确分配值来解决此问题。
Item this_word (link h, int max){
Item word;
if (h == NULL) {
return 0;
}
if (h->item->acc == max) {
word = h->item;
this_word(h->l, max);
} else {
// assign a certain value to word
this_word(h->l, max);
this_word(h->r, max);
}
return word;
}
据我所知,您的代码有点奇怪,因为根据您的问题,您无法完全理解您的代码。为了提高anser的质量,提供更好的问题(添加代码,解释上下文等)