通常情况下,我只需在main中输入head = new Node
,这会设置一切,但规定是我没有权限搞乱全局变量。这是一个我只能访问main的赋值,由于其他后端功能,我必须保留全局变量,所以我不能用head = new Node
覆盖它。
重点是将字符添加到链表中。我只是硬编码插入一个例子,但我仍然无法避免错误。
有没有正确的方法来添加它们?
struct Node{
char key;
Node *next;
};
Node *head = NULL;
int main(){
char x = 'a';
cout<<x<<endl;
head->key=x;
}
赋值: 查找BST中属于给定值范围的所有节点。然后构建值的链接列表,列表应按升序排列。
注意:链表的头部在后端全局声明,其初始值为NULL。只需使用head将节点添加到链接列表。链表的打印也将在后端完成。可以使用辅助函数。
void RangeSearch(TreeNode * node,char m,char n);
答案 0 :(得分:0)
Head只是一个指向NULL的指针。没有为Node分配真实的对象/内存。你首先要为它分配内存。
在您的作业中,您可以而且应该(据我所知)将节点添加到链接列表,因此您必须分配新节点。
struct Node {
char key;
Node *next;
};
Node *head = NULL;
int main() {
char x = 'a';
head = new Node();
cout << x << endl;
head->key = x;
delete head;
return 0;
}