我想将Binary Search树转换为双链表。我做了将BST转换为DLL的代码。我的代码为第一个测试用例生成了正确的输出,但此后它没有任何输出。问题是使用静态变量。我是否必须为所有测试用例生成正确的输出?
void BToDLL(Node *root, Node **head_ref)
{
static Node* prev=NULL;
if(root==NULL)
return;
BToDLL(root->left,head_ref);
if(prev==NULL)
{
*head_ref=root;
}
else
{
root->left=prev;
prev->right=root;
}
prev=root;
BToDLL(root->right,head_ref);
}
答案 0 :(得分:0)
您可以修改函数以采用第三个参数,该参数的默认值为import requests
from bs4 import BeautifulSoup
def getconnect(website):
req = requests.get(website)
return req.text
def bs4(text):
soup = BeautifulSoup(text , 'html.parser')
print soup.title
print soup.p
text = getconnect(raw_input('Enter Website: '))
bs4(text)
,而不是使用局部static
变量。
NULL
首次调用void BToDLL(Node *root, Node **head_ref, Node* prev=NULL)
时,将采用默认值,但是在对<{1}的最后递归调用中,您也可以指定BToDLL
参数
BToDLL