BCA/3/CC/14 Student’s Copy
Professional Course Examination (Odd), 2023
( 3rd Semester )
BACHELOR OF COMPUTER APPLICATIONS
Course No. : BCA/3/CC/14
( Data Structure using C )
Full Marks : 75
Time : 3 hours
The figures in the margin indicate full marks for the questions
( PART : A—OBJECTIVE )
( Marks : 25 )
SECTION—I
( Marks : 15 )
I. Tick (3) the correct answer in the brackets provided : 1×10=10
1. The arrangement of memory space according to the size of information
for maximum utility of the memory space is called
(a) binary structure ( )
(b) primary data types ( )
(c) data structure ( )
(d) memory space ( )
/291 1 [ Contd.
2. In dynamic memory allocation, the function returns the
(a) address of the first byte of the allocated space ( )
(b) value of the space ( )
(c) address of the last cell ( )
(d) value of the last element ( )
3. In circular queue, addition of the front element gives birth to which
of the following changes?
(a) f=(f+1)%Q_Size ( )
(b) r=r+1 ( )
(c) f=r=0 ( )
(d) f=f+1, r=r+1 ( )
4. A function that calls itself is called
(a) user-defined function ( )
(b) pre-defined function ( )
(c) main function ( )
(d) recursive function ( )
5. Searching all the elements of the array from the first one is called
(a) binary search ( )
(b) whole search ( )
(c) merge search ( )
(d) sequential search ( )
6. Bubble sort is also known as
(a) insertion sort ( )
(b) selection sort ( )
(c) sinking sort ( )
(d) merge sort ( )
/291 2 [ Contd.
7. A doubly linked list has
(a) 2 fields ( )
(b) 3 fields ( )
(c) 4 fields ( )
(d) 5 fields ( )
8. In a circular linked list, the link field of the last node contains
(a) null ( )
(b) 0 ( )
(c) address of the second last node ( )
(d) address of the first node ( )
9. The inorder traversal has a sequence
(a) left–right–root ( )
(b) left–right–left ( )
(c) left–root–right ( )
(d) right–root–left ( )
10. A complete binary tree will have
(a) 3i number of nodes in the i th level ( )
(b) 2i number of nodes in the i th level ( )
(c) (i + 1th
) nodes ( )
(d) (i + j )th nodes ( )
II. State whether the following statements are True (T) or False (F) by putting
a Tick (3) mark in the brackets provided : 1×5=5
1. Graph is a linear data structure.
( T / F )
2. The prefix expression of (a + b ) / c is ab + c /.
( T / F )
/291 3 [ Contd.
3. In selection sort, we select the smallest one and exchange it with
the first element.
( T / F )
4. In a doubly linked list, the last node contains the item only.
( T / F )
5. All trees are graphs while all graphs are not trees.
( T / F )
SECTION—II
( Marks : 10 )
III. Answer the following questions : 2×5=10
1. (a) What are linear data structures? Give examples.
OR
(b) Mention the differences between structure and union.
2. (a) What is the prefix version of ((a + (b - c )* d ) Ù e + f )?
OR
(b) What is the postfix version of ((a + (b - c )* d ) Ù e + f )?
3. (a) Briefly explain a merge sort.
OR
(b) How does a binary search work?
4. (a) What are the drawbacks of a simple linked list?
OR
(b) Explain the node structure/composition of a doubly circular
linked list.
/291 4 [ Contd.
5. (a) Briefly define a binary tree with an example.
OR
(b) Explain in brief the binary search tree.
( PART : B—DESCRIPTIVE )
( Marks : 50 )
IV. Answer the following questions : 10×5=50
1. (a) What is the difference between static and dynamic memory
allocations? Explain the four dynamic memory allocation functions
with their syntax. 6+4=10
OR
(b) (i) Explain different types of linear data structure. 7
(ii) What are the advantages and disadvantages of using pointer? 3
2. (a) Explain the concept of recursive function by taking a Fibonacci
sequence as example. 5
(b) By mentioning every step, what will be the value of a postfix
expression 8 2/3*3 1+–? 5
OR
(c) With a C program example, explain the operations of a linear
queue. 8
(d) What are the applications of queues? 2
3. (a) Write a C program to implement a sequential search. 4
(b) Write a C program to sort n elements using insertion sort. 6
/291 5 [ Contd.
OR
(c) Explain in detail how a quick sort works for the following data : 10
36, 37, 11, 10, 42, 72, 65, 98, 8, 78
4. (a) Define a linked list. What are the advantages of a linked list? Write
relevant C program of singly linked list to insert new node on any
given position, to delete the last node and to display contents of
the list. 2+4+4=10
OR
(b) Write a C program to implement a doubly linked list that insert at
any given position, delete and display items. 10
5. (a) What are the different types of binary tree? Explain a complete
binary and almost complete binary tree in detail. 1+2+2=5
(b) From the following binary tree, write down the inorder, preorder
and the postorder traversals : 5
B C
D E F G
OR
(c) What are the DFS and BFS of the following graph, starting from
the node A? 5+5=10
B D
A C E
S F
G H
HHH
/291 6 24G—210