Looking for Програмування та командна робота test answers and solutions? Browse our comprehensive collection of verified answers for Програмування та командна робота at vns.lpnu.ua.
Get instant access to accurate answers and detailed explanations for your course questions. Our community-driven platform helps students succeed!
Рекурсивна функція формує бінарне дерево за такими правилами:
- функція приймає параметр nodeCount – кількість вузлів в дереві і повертає як результат вказівник на кореневий вузол сформованого дерева;
- користувач вводить з клавіатури значення інформаційного поля кожного вузла;
- перше введене значення стане значенням кореневого вузла цього дерева;
- вузли розподіляються рівномірно між лівим та правим під-деревами, кількості вузлів у лівому та правому під-дереві обчислюються за формулами
leftCount = nodeCount / 2;
rightCount = nodeCount - leftCount - 1;
Для дерева із 7 вузлів користувач ввід наступні значення: 4, 2, 1, 3, 6, 5, 7
Вказати, які значення будуть виведені при постфіксному обході такого дерева:
Вираз, заданий в інфіксній формі, записати в префіксній формі:
a*b+c/d
Elem *tmp = L->link->link;
delete L->link;
L->link = tmp;
Команди, які видаляють перший елемент лінійного однонапрямленого списку
Рекурсивна функція формує бінарне дерево пошуку, вона приймає два параметри:
- вказівник root на кореневий вузол – як посилання;
- значення value інформаційного поля шуканого вузла (або новоствореного вузла).
Функція повертає вказівник на знайдений чи новостворений вузол – як результат та булеве значення found – як вихідний параметр, що вказує, чи існував вузол із вказаним значенням (true) чи ні (false).
При першому виклику – якщо параметр root має значення NULL, створюється новий вузол, його поля зв’язку заповнюються значеннями NULL, а ключове поле – значенням value; параметр found отримує значення false, вказівник root отримує значення вказівника на новостворений вузол та функція повертає вказівник на цей вузол.
Функція здійснює бінарний пошук за таким правилом: якщо вузол із заданим значенням ключа знайдено, то параметр found отримує значення true та функція повертає вказівник на знайдений вузол. Інакше, якщо шукане значення – менше ключового поля поточного вузла, пошук продовжується в його лівому під-дереві, в іншому випадку – в правому під-дереві.
Якщо переглянута вся відповідна гілка дерева, і шуканого значення не знайдено, відбувається вставка нового вузла за тим же правилом, що і для першого вузла.
Для дерева із 7 вузлів користувач ввід наступні значення:
Вказати, яке значення буде виводити команда:
cout << "
де функція Find():
Node* Find(Node* root)
{
if (root->right != NULL)
return Find(root->right);
else
return root;
}
Рекурсивна функція формує бінарне дерево пошуку, вона приймає два параметри:
- вказівник root на кореневий вузол – як посилання;
- значення value інформаційного поля шуканого вузла (або новоствореного вузла).
Функція повертає вказівник на знайдений чи новостворений вузол – як результат та булеве значення found – як вихідний параметр, що вказує, чи існував вузол із вказаним значенням (true) чи ні (false).
При першому виклику – якщо параметр root має значення NULL, створюється новий вузол, його поля зв’язку заповнюються значеннями NULL, а ключове поле – значенням value; параметр found отримує значення false, вказівник root отримує значення вказівника на новостворений вузол та функція повертає вказівник на цей вузол.
Функція здійснює бінарний пошук за таким правилом: якщо вузол із заданим значенням ключа знайдено, то параметр found отримує значення true та функція повертає вказівник на знайдений вузол. Інакше, якщо шукане значення – менше ключового поля поточного вузла, пошук продовжується в його лівому під-дереві, в іншому випадку – в правому під-дереві.
Якщо переглянута вся відповідна гілка дерева, і шуканого значення не знайдено, відбувається вставка нового вузла за тим же правилом, що і для першого вузла.
Для дерева із 7 вузлів користувач ввід наступні значення: 1, 2, 3, 4, 5, 6, 7
Вказати, які значення будуть виведені при постфіксному обході такого дерева:
Команди, які вставляють новий елемент на початок лінійного двонапрямленого списку
Elem *tmp = new Elem;
tmp->info = value;
tmp->next = NULL;
if (last != NULL)
last->next = tmp;
tmp->prev = last;
last = tmp;
if (first == NULL)
first = tmp;
Вказати пояснення – що визначається в наступному фрагменті програми:
int (*(*f[10])())[10];
Рекурсивна функція формує бінарне дерево за такими правилами:
- функція приймає параметр nodeCount – кількість вузлів в дереві і повертає як результат вказівник на кореневий вузол сформованого дерева;
- користувач вводить з клавіатури значення інформаційного поля кожного вузла;
- перше введене значення стане значенням кореневого вузла цього дерева;
- вузли розподіляються рівномірно між лівим та правим під-деревами, кількості вузлів у лівому та правому під-дереві обчислюються за формулами
leftCount = nodeCount / 2;
rightCount = nodeCount - leftCount - 1;
Для дерева із 7 вузлів користувач ввід наступні значення: 4, 2, 1, 3, 6, 5, 7
Вказати, яке значення буде виводити команда:
cout << "
де функція Find():
Node* Find(Node* root)
{
if (root->left != NULL)
return Find(root->left);
else
return root;
}