Binary Tree Practical 1
Binary Tree Practical 1
Save this evidence document as evidence_ followed by your centre number_ candidate number.
For example: evidence_ zz999_9999 and insert your name, centre number and candidate number
into the header above.
Examiners must be able to read the contents including any screenshots without the use of a
magnifying glass. Answers that are not readable or missing will not be awarded any marks.
Save this evidence document at regular intervals, for example every 10 minutes.
Question 3
Part 3(a)
Module Module1
Sub Main()
Dim RootPointer, FreeNode As Integer
Dim ArrayNodes(19, 2) As Integer '1st and 3rd column represent leftptr and
right ptr
RootPointer = -1
FreeNode = 0
Console.ReadKey()
End Sub
Part 3(b)
Sub AddNode(ByRef ArrayNodes(,) As Integer, ByRef Rootpointer As Integer, ByRef
Freenode As Integer)
Dim NodeData, CurrentNode As Integer
Dim Placed As Boolean = False
If Rootpointer = -1 Then
Rootpointer = 0
Else
CurrentNode = Rootpointer
While Placed = False
If NodeData < ArrayNodes(CurrentNode, 1) Then
If ArrayNodes(CurrentNode, 0) = -1 Then
ArrayNodes(CurrentNode, 0) = Freenode
Placed = True
Else
CurrentNode = ArrayNodes(CurrentNode, 0)
End If
Else
If ArrayNodes(CurrentNode, 2) = -1 Then
1
9618/42 AS & A Level Computer Science November 2021 – Practical evidence document
Part 3(d)(i)
For k = 0 To 9
AddNode(ArrayNodes, RootPointer, FreeNode)
Next
PrintAll(ArrayNodes)
Part 3(d)(ii)
Part 3(e)(i)
Sub InOrder(ByRef ArrayNodes(,) As Integer, ByVal Rootptr As Integer)
2
9618/42 AS & A Level Computer Science November 2021 – Practical evidence document
Part 3(e)(ii)