WBSSC SLST Computer Application IX & X : Data Structure

Data Structure – 100 MCQ Questions

1. What is a data structure? / ডেটা স্ট্রাকচার কী?

A) A programming language. / একটি প্রোগ্রামিং ভাষা।

B) A way of organizing and storing data. / ডেটা সংগঠিত এবং সংরক্ষণ করার একটি উপায়।

C) A collection of algorithms. / অ্যালগরিদমের একটি সংগ্রহ।

D) A type of computer hardware. / এক ধরনের কম্পিউটার হার্ডওয়্যার।

Correct Answer / সঠিক উত্তর: B) A way of organizing and storing data. / ডেটা সংগঠিত এবং সংরক্ষণ করার একটি উপায়।

Explanation / ব্যাখ্যা: A data structure is a particular way of organizing data in a computer so that it can be used effectively. It defines the relationship between data and the operations that can be performed on the data.
ডেটা স্ট্রাকচার হলো কম্পিউটারে ডেটা সংগঠিত করার একটি বিশেষ পদ্ধতি যাতে এটি কার্যকরভাবে ব্যবহার করা যায়। এটি ডেটার মধ্যে সম্পর্ক এবং ডেটার উপর সঞ্চালিত হতে পারে এমন অপারেশনগুলিকে সংজ্ঞায়িত করে।

2. Which of the following is a linear data structure? / নিচের কোনটি একটি লিনিয়ার ডেটা স্ট্রাকচার?

A) Tree / ট্রি

B) Graph / গ্রাফ

C) Array / অ্যারে

D) All of the above / উপরের সবগুলো

Correct Answer / সঠিক উত্তর: C) Array / অ্যারে

Explanation / ব্যাখ্যা: In a linear data structure, elements are arranged in a sequential manner. Arrays, Linked Lists, Stacks, and Queues are examples of linear data structures. Trees and Graphs are non-linear.
লিনিয়ার ডেটা স্ট্রাকচারে, উপাদানগুলি একটি ক্রমিক পদ্ধতিতে সাজানো থাকে। অ্যারে, লিঙ্কড লিস্ট, স্ট্যাক এবং কিউ হলো লিনিয়ার ডেটা স্ট্রাকচারের উদাহরণ। ট্রি এবং গ্রাফ হলো নন-লিনিয়ার।

3. What does “FIFO” stand for in the context of a Queue? / একটি কিউ-এর প্রসঙ্গে “FIFO” এর পূর্ণরূপ কী?

A) First-In, First-Out

B) Fast-In, Fast-Out

C) First-In, Final-Out

D) Final-In, First-Out

Correct Answer / সঠিক উত্তর: A) First-In, First-Out

Explanation / ব্যাখ্যা: FIFO stands for First-In, First-Out. It is the principle followed by a Queue data structure, where the first element added to the queue will be the first one to be removed.
FIFO এর পূর্ণরূপ হলো First-In, First-Out। এটি কিউ ডেটা স্ট্রাকচার দ্বারা অনুসৃত নীতি, যেখানে কিউ-তে প্রথম যোগ করা উপাদানটিই প্রথম সরানো হবে।

4. Which data structure follows the LIFO principle? / কোন ডেটা স্ট্রাকচার LIFO নীতি অনুসরণ করে?

A) Queue / কিউ

B) Linked List / লিঙ্কড লিস্ট

C) Stack / স্ট্যাক

D) Tree / ট্রি

Correct Answer / সঠিক উত্তর: C) Stack / স্ট্যাক

Explanation / ব্যাখ্যা: LIFO stands for Last-In, First-Out. A stack works on this principle, where the last element inserted is the first one to be removed, like a stack of plates.
LIFO এর পূর্ণরূপ হলো Last-In, First-Out। একটি স্ট্যাক এই নীতিতে কাজ করে, যেখানে সর্বশেষ যোগ করা উপাদানটিই প্রথম সরানো হয়, যেমন প্লেটের স্ট্যাক।

5. Which of the following is a non-linear data structure? / নিচের কোনটি একটি নন-লিনিয়ার ডেটা স্ট্রাকচার?

A) Stack / স্ট্যাক

B) Queue / কিউ

C) Graph / গ্রাফ

D) Array / অ্যারে

Correct Answer / সঠিক উত্তর: C) Graph / গ্রাফ

Explanation / ব্যাখ্যা: In a non-linear data structure, data elements are not arranged sequentially. Each element can be connected to multiple other elements. Trees and Graphs are common examples.
একটি নন-লিনিয়ার ডেটা স্ট্রাকচারে, ডেটা উপাদানগুলি ক্রমানুসারে সাজানো থাকে না। প্রতিটি উপাদান একাধিক অন্যান্য উপাদানের সাথে সংযুক্ত থাকতে পারে। ট্রি এবং গ্রাফ হলো সাধারণ উদাহরণ।

6. The operation of adding an element to a stack is called: / একটি স্ট্যাকে একটি উপাদান যোগ করার অপারেশনকে কী বলা হয়?

A) Enqueue / এনকিউ

B) Push / পুশ

C) Insert / ইনসার্ট

D) Add / অ্যাড

Correct Answer / সঠিক উত্তর: B) Push / পুশ

Explanation / ব্যাখ্যা: The ‘Push’ operation is used to add an element to the top of a stack. The ‘Pop’ operation is used to remove an element from the top.
‘Push’ অপারেশনটি একটি স্ট্যাকের শীর্ষে একটি উপাদান যোগ করতে ব্যবহৃত হয়। ‘Pop’ অপারেশনটি শীর্ষ থেকে একটি উপাদান সরাতে ব্যবহৃত হয়।

7. The operation of removing an element from a queue is called: / একটি কিউ থেকে একটি উপাদান সরানোর অপারেশনকে কী বলা হয়?

A) Dequeue / ডিকিউ

B) Pop / পপ

C) Delete / ডিলিট

D) Remove / রিমুভ

Correct Answer / সঠিক উত্তর: A) Dequeue / ডিকিউ

Explanation / ব্যাখ্যা: The ‘Dequeue’ (or Deque) operation removes an element from the front of the queue. The ‘Enqueue’ operation adds an element to the rear of the queue.
‘Dequeue’ (বা Deque) অপারেশন কিউয়ের সামনে থেকে একটি উপাদান সরিয়ে দেয়। ‘Enqueue’ অপারেশন কিউয়ের পিছনে একটি উপাদান যোগ করে।

8. What is the time complexity to access an element in an array by its index? / একটি অ্যারেতে তার ইন্ডেক্স দ্বারা একটি উপাদান অ্যাক্সেস করার টাইম কমপ্লেক্সিটি কত?

A) O(n)

B) O(log n)

C) O(1)

D) O(n^2)

Correct Answer / সঠিক উত্তর: C) O(1)

Explanation / ব্যাখ্যা: Accessing an element in an array by its index is a constant time operation, denoted as O(1). This is because the memory location can be calculated directly using the base address and the index.
ইনডেক্স ব্যবহার করে অ্যারের কোনো উপাদান অ্যাক্সেস করা একটি কনস্ট্যান্ট টাইম অপারেশন, যা O(1) দ্বারা চিহ্নিত করা হয়। কারণ বেস অ্যাড্রেস এবং ইনডেক্স ব্যবহার করে মেমরি লোকেশন সরাসরি গণনা করা যায়।

9. In a linked list, each element (node) contains a data part and a pointer to the: / একটি লিঙ্কড লিস্টে, প্রতিটি উপাদান (নোড) একটি ডেটা অংশ এবং একটি পয়েন্টার ধারণ করে যা নির্দেশ করে:

A) Previous node / আগের নোডকে

B) Next node / পরবর্তী নোডকে

C) First node / প্রথম নোডকে

D) Last node / শেষ নোডকে

Correct Answer / সঠিক উত্তর: B) Next node / পরবর্তী নোডকে

Explanation / ব্যাখ্যা: In a singly linked list, each node consists of two parts: a data field and a pointer (or link) to the next node in the sequence. In a doubly linked list, it also has a pointer to the previous node.
একটি সিঙ্গলি লিঙ্কড লিস্টে, প্রতিটি নোড দুটি অংশ নিয়ে গঠিত: একটি ডেটা ফিল্ড এবং ক্রমের পরবর্তী নোডের জন্য একটি পয়েন্টার (বা লিঙ্ক)। একটি ডাবলি লিঙ্কড লিস্টে, এটি পূর্ববর্তী নোডের জন্য একটি পয়েন্টারও ধারণ করে।

10. A binary tree can have at most how many children for each node? / একটি বাইনারি ট্রি-তে প্রতিটি নোডের সর্বোচ্চ কয়টি চাইল্ড থাকতে পারে?

A) 1

B) 2

C) 3

D) Any number / যেকোনো সংখ্যা

Correct Answer / সঠিক উত্তর: B) 2

Explanation / ব্যাখ্যা: By definition, a binary tree is a tree data structure in which each node has at most two children, which are referred to as the left child and the right child.
সংজ্ঞা অনুসারে, একটি বাইনারি ট্রি হলো একটি ট্রি ডেটা স্ট্রাকচার যেখানে প্রতিটি নোডের সর্বোচ্চ দুটি চাইল্ড থাকে, যেগুলোকে বাম চাইল্ড এবং ডান চাইল্ড বলা হয়।

11. What is the complexity of an algorithm? / একটি অ্যালগরিদমের কমপ্লেক্সিটি কী?

A) The number of lines of code. / কোডের লাইনের সংখ্যা।

B) The difficulty of understanding the algorithm. / অ্যালগরিদম বোঝার অসুবিধা।

C) The amount of time and/or space required by the algorithm. / অ্যালগরিদমের জন্য প্রয়োজনীয় সময় এবং/অথবা স্থানের পরিমাণ।

D) The number of functions used. / ব্যবহৃত ফাংশনের সংখ্যা।

Correct Answer / সঠিক উত্তর: C) The amount of time and/or space required by the algorithm. / অ্যালগরিদমের জন্য প্রয়োজনীয় সময় এবং/অথবা স্থানের পরিমাণ।

Explanation / ব্যাখ্যা: Algorithm complexity is a measure of the amount of resources (time and space) required to execute an algorithm. It is usually expressed using Big O notation.
অ্যালগরিদম কমপ্লেক্সিটি হলো একটি অ্যালগরিদম কার্যকর করার জন্য প্রয়োজনীয় সম্পদের (সময় এবং স্থান) পরিমাপ। এটি সাধারণত বিগ O নোটেশন ব্যবহার করে প্রকাশ করা হয়।

12. Which searching algorithm requires the data to be sorted? / কোন সার্চিং অ্যালগরিদমের জন্য ডেটা সাজানো (sorted) থাকা প্রয়োজন?

A) Linear Search / লিনিয়ার সার্চ

B) Binary Search / বাইনারি সার্চ

C) Depth First Search (DFS) / ডেপথ ফার্স্ট সার্চ (DFS)

D) Breadth First Search (BFS) / ব্রেথ ফার্স্ট সার্চ (BFS)

Correct Answer / সঠিক উত্তর: B) Binary Search / বাইনারি সার্চ

Explanation / ব্যাখ্যা: Binary search works on the principle of “divide and conquer”. It repeatedly divides the search interval in half. This is only possible if the array is sorted. Linear search does not require a sorted array.
বাইনারি সার্চ “ডিভাইড অ্যান্ড কনকার” নীতিতে কাজ করে। এটি বারবার সার্চ ইন্টারভালকে অর্ধেক করে ফেলে। এটি কেবল তখনই সম্ভব যদি অ্যারেটি সাজানো থাকে। লিনিয়ার সার্চের জন্য সাজানো অ্যারের প্রয়োজন হয় না।

13. What is the worst-case time complexity of Bubble Sort? / বাবল সর্ট-এর সবচেয়ে খারাপ (worst-case) টাইম কমপ্লেক্সিটি কত?

A) O(n)

B) O(log n)

C) O(n log n)

D) O(n^2)

Correct Answer / সঠিক উত্তর: D) O(n^2)

Explanation / ব্যাখ্যা: The worst-case scenario for Bubble Sort occurs when the array is sorted in reverse order. In this case, it needs to perform n-1 passes, and in each pass, it makes approximately n comparisons, leading to a time complexity of O(n^2).
বাবল সর্টের জন্য সবচেয়ে খারাপ পরিস্থিতি তখন ঘটে যখন অ্যারেটি বিপরীত ক্রমে সাজানো থাকে। এই ক্ষেত্রে, এটিকে n-1টি পাস করতে হয়, এবং প্রতিটি পাসে এটি প্রায় nটি তুলনা করে, যা O(n^2) টাইম কমপ্লেক্সিটির দিকে নিয়ে যায়।

14. A graph can be represented using: / একটি গ্রাফকে উপস্থাপন করা যেতে পারে:

A) Adjacency Matrix only / শুধুমাত্র অ্যাডজাসেন্সি ম্যাট্রিক্স দ্বারা

B) Adjacency List only / শুধুমাত্র অ্যাডজাসেন্সি লিস্ট দ্বারা

C) Both Adjacency Matrix and Adjacency List / অ্যাডজাসেন্সি ম্যাট্রিক্স এবং অ্যাডজাসেন্সি লিস্ট উভয় দ্বারা

D) None of the above / উপরের কোনটিই নয়

Correct Answer / সঠিক উত্তর: C) Both Adjacency Matrix and Adjacency List / অ্যাডজাসেন্সি ম্যাট্রিক্স এবং অ্যাডজাসেন্সি লিস্ট উভয় দ্বারা

Explanation / ব্যাখ্যা: The two most common ways to represent a graph are the Adjacency Matrix and the Adjacency List. The choice depends on the properties of the graph (dense or sparse) and the operations to be performed.
একটি গ্রাফ উপস্থাপন করার দুটি সবচেয়ে সাধারণ উপায় হলো অ্যাডজাসেন্সি ম্যাট্রিক্স এবং অ্যাডজাসেন্সি লিস্ট। পছন্দটি গ্রাফের বৈশিষ্ট্যের (ঘন বা স্পার্স) এবং সঞ্চালিত অপারেশনের উপর নির্ভর করে।

15. The top element of a non-empty stack is found using which operation? / একটি খালি নয় এমন স্ট্যাকের শীর্ষ উপাদানটি কোন অপারেশনের মাধ্যমে পাওয়া যায়?

A) Pop

B) Push

C) Peek (or Top)

D) IsEmpty

Correct Answer / সঠিক উত্তর: C) Peek (or Top)

Explanation / ব্যাখ্যা: The ‘Peek’ or ‘Top’ operation returns the top element of the stack without removing it. The ‘Pop’ operation removes and returns the top element.
‘Peek’ বা ‘Top’ অপারেশনটি স্ট্যাকের শীর্ষ উপাদানটি না সরিয়ে ফেরত দেয়। ‘Pop’ অপারেশনটি শীর্ষ উপাদানটি সরিয়ে এবং ফেরত দেয়।

16. Which sorting algorithm is known for its “divide and conquer” strategy? / কোন সর্টিং অ্যালগরিদম তার “ডিভাইড অ্যান্ড কনকার” কৌশলের জন্য পরিচিত?

A) Bubble Sort / বাবল সর্ট

B) Insertion Sort / ইনসারশন সর্ট

C) Merge Sort / মার্জ সর্ট

D) Selection Sort / সিলেকশন সর্ট

Correct Answer / সঠিক উত্তর: C) Merge Sort / মার্জ সর্ট

Explanation / ব্যাখ্যা: Merge Sort and Quick Sort are famous examples of the “divide and conquer” paradigm. Merge Sort divides the array into two halves, sorts them recursively, and then merges the two sorted halves.
মার্জ সর্ট এবং কুইক সর্ট “ডিভাইড অ্যান্ড কনকার” প্যারাডাইমের বিখ্যাত উদাহরণ। মার্জ সর্ট অ্যারেটিকে দুটি ভাগে ভাগ করে, সেগুলোকে রিকার্সিভলি সর্ট করে, এবং তারপর দুটি সর্টেড অর্ধেককে মার্জ করে।

17. A node in a tree with no children is called a: / একটি ট্রি-তে চাইল্ডবিহীন নোডকে কী বলা হয়?

A) Root node / রুট নোড

B) Leaf node / লিফ নোড

C) Parent node / প্যারেন্ট নোড

D) Internal node / ইন্টারনাল নোড

Correct Answer / সঠিক উত্তর: B) Leaf node / লিফ নোড

Explanation / ব্যাখ্যা: A leaf node (or terminal node) is a node in a tree that has no children. Nodes that have at least one child are called internal nodes. The top-most node is the root node.
একটি লিফ নোড (বা টার্মিনাল নোড) হলো একটি ট্রি-এর এমন একটি নোড যার কোনো চাইল্ড নেই। যে নোডগুলির কমপক্ষে একটি চাইল্ড থাকে সেগুলিকে ইন্টারনাল নোড বলা হয়। সবচেয়ে উপরের নোডটি হলো রুট নোড।

18. What is the main disadvantage of an array? / একটি অ্যারের প্রধান অসুবিধা কী?

A) Slow element access / ধীর গতির এলিমেন্ট অ্যাক্সেস

B) Fixed size / নির্দিষ্ট আকার

C) Elements are not stored contiguously / উপাদানগুলি পরপর সংরক্ষিত থাকে না

D) It cannot store multiple data types / এটি একাধিক ডেটা টাইপ সংরক্ষণ করতে পারে না

Correct Answer / সঠিক উত্তর: B) Fixed size / নির্দিষ্ট আকার

Explanation / ব্যাখ্যা: The primary disadvantage of a static array is its fixed size. Once declared, its size cannot be changed during runtime. This can lead to wasted space or insufficient space. Linked lists solve this problem.
একটি স্ট্যাটিক অ্যারের প্রধান অসুবিধা হলো এর নির্দিষ্ট আকার। একবার ঘোষণা করা হলে, রানটাইমের সময় এর আকার পরিবর্তন করা যায় না। এর ফলে স্থান নষ্ট হতে পারে বা অপর্যাপ্ত স্থান হতে পারে। লিঙ্কড লিস্ট এই সমস্যার সমাধান করে।

19. In a Binary Search Tree (BST), all nodes in the left subtree of a node ‘N’ have values: / একটি বাইনারি সার্চ ট্রি (BST)-তে, একটি নোড ‘N’-এর বাম সাবট্রি-এর সমস্ত নোডের মান:

A) Greater than N’s value / N-এর মানের চেয়ে বেশি

B) Less than N’s value / N-এর মানের চেয়ে কম

C) Equal to N’s value / N-এর মানের সমান

D) Any value / যেকোনো মান

Correct Answer / সঠিক উত্তর: B) Less than N’s value / N-এর মানের চেয়ে কম

Explanation / ব্যাখ্যা: A Binary Search Tree has a specific property: for any given node N, all values in its left subtree are less than N’s value, and all values in its right subtree are greater than N’s value.
একটি বাইনারি সার্চ ট্রি-এর একটি নির্দিষ্ট বৈশিষ্ট্য রয়েছে: যেকোনো নোড N-এর জন্য, তার বাম সাবট্রি-এর সমস্ত মান N-এর মানের চেয়ে কম, এবং তার ডান সাবট্রি-এর সমস্ত মান N-এর মানের চেয়ে বেশি।

20. What is the condition when you try to insert an element into a full stack called? / যখন আপনি একটি পূর্ণ স্ট্যাকে একটি উপাদান প্রবেশ করানোর চেষ্টা করেন, সেই অবস্থাকে কী বলা হয়?

A) Underflow / আন্ডারফ্লো

B) Overflow / ওভারফ্লো

C) Fullflow / ফুলফ্লো

D) Error / এরর

Correct Answer / সঠিক উত্তর: B) Overflow / ওভারফ্লো

Explanation / ব্যাখ্যা: Stack Overflow is a condition that occurs when you try to push an element onto a stack that is already full. Conversely, Stack Underflow occurs when you try to pop from an empty stack.
স্ট্যাক ওভারফ্লো হলো একটি অবস্থা যা ঘটে যখন আপনি এমন একটি স্ট্যাকে একটি উপাদান পুশ করার চেষ্টা করেন যা ইতিমধ্যে পূর্ণ। বিপরীতভাবে, স্ট্যাক আন্ডারফ্লো ঘটে যখন আপনি একটি খালি স্ট্যাক থেকে পপ করার চেষ্টা করেন।

21. The process of visiting each node in a tree is called: / একটি ট্রির প্রতিটি নোড পরিদর্শন করার প্রক্রিয়াকে কী বলা হয়?

A) Searching / সার্চিং

B) Traversal / ট্র্যাভার্সাল

C) Sorting / সর্টিং

D) Merging / মার্জিং

Correct Answer / সঠিক উত্তর: B) Traversal / ট্র্যাভার্সাল

Explanation / ব্যাখ্যা: Tree traversal (also known as tree search) is a form of graph traversal and refers to the process of visiting (checking and/or updating) each node in a tree data structure, exactly once. Common traversals are In-order, Pre-order, and Post-order.
ট্রি ট্র্যাভার্সাল (ট্রি সার্চ নামেও পরিচিত) হলো গ্রাফ ট্র্যাভার্সালের একটি রূপ এবং এটি একটি ট্রি ডেটা স্ট্রাকচারের প্রতিটি নোডকে ঠিক একবার পরিদর্শন (পরীক্ষা এবং/অথবা আপডেট) করার প্রক্রিয়াকে বোঝায়। সাধারণ ট্র্যাভার্সালগুলি হলো ইন-অর্ডার, প্রি-অর্ডার এবং পোস্ট-অর্ডার।

22. Which traversal of a Binary Search Tree (BST) will produce a sorted list of elements? / একটি বাইনারি সার্চ ট্রি (BST) এর কোন ট্র্যাভার্সাল উপাদানগুলির একটি সাজানো তালিকা তৈরি করবে?

A) Pre-order / প্রি-অর্ডার

B) Post-order / পোস্ট-অর্ডার

C) In-order / ইন-অর্ডার

D) Level-order / লেভেল-অর্ডার

Correct Answer / সঠিক উত্তর: C) In-order / ইন-অর্ডার

Explanation / ব্যাখ্যা: An in-order traversal of a BST visits the nodes in the order: Left Subtree, Root, Right Subtree. Due to the properties of a BST, this traversal method always results in the nodes being visited in ascending (sorted) order.
একটি BST-এর ইন-অর্ডার ট্র্যাভার্সাল নোডগুলিকে এই ক্রমে পরিদর্শন করে: বাম সাবট্রি, রুট, ডান সাবট্রি। BST-এর বৈশিষ্ট্যের কারণে, এই ট্র্যাভার্সাল পদ্ধতিটি সর্বদা নোডগুলিকে আরোহী (সাজানো) ক্রমে পরিদর্শন করে।

23. What is the time complexity of the binary search algorithm? / বাইনারি সার্চ অ্যালগরিদমের টাইম কমপ্লেক্সিটি কত?

A) O(n)

B) O(log n)

C) O(1)

D) O(n^2)

Correct Answer / সঠিক উত্তর: B) O(log n)

Explanation / ব্যাখ্যা: Binary search has a logarithmic time complexity, O(log n), because it halves the search space with each comparison. This makes it significantly faster than linear search for large datasets.
বাইনারি সার্চের একটি লগারিদমিক টাইম কমপ্লেক্সিটি, O(log n) আছে, কারণ এটি প্রতিটি তুলনার সাথে সার্চের স্থানকে অর্ধেক করে দেয়। এটি বড় ডেটাসেটের জন্য লিনিয়ার সার্চের চেয়ে উল্লেখযোগ্যভাবে দ্রুততর করে তোলে।

24. A queue where elements can be added or removed from both ends is called a: / একটি কিউ যেখানে উভয় প্রান্ত থেকে উপাদান যোগ বা অপসারণ করা যায়, তাকে কী বলা হয়?

A) Circular Queue / সার্কুলার কিউ

B) Priority Queue / প্রায়োরিটি কিউ

C) Deque (Double-ended Queue) / ডেক (ডাবল-এন্ডেড কিউ)

D) Simple Queue / সিম্পল কিউ

Correct Answer / সঠিক উত্তর: C) Deque (Double-ended Queue) / ডেক (ডাবল-এন্ডেড কিউ)

Explanation / ব্যাখ্যা: A Deque, short for Double-ended Queue, is a generalized version of a queue that allows insertion and deletion at both the front and the rear.
একটি ডেক, যা ডাবল-এন্ডেড কিউ-এর সংক্ষিপ্ত রূপ, এটি কিউ-এর একটি সাধারণ সংস্করণ যা সামনে এবং পিছনে উভয় দিকেই সন্নিবেশ এবং অপসারণের অনুমতি দেয়।

25. Which data structure is typically used to implement a recursive function call? / একটি রিকার্সিভ ফাংশন কল বাস্তবায়নের জন্য সাধারণত কোন ডেটা স্ট্রাকচার ব্যবহার করা হয়?

A) Queue / কিউ

B) Stack / স্ট্যাক

C) Linked List / লিঙ্কড লিস্ট

D) Tree / ট্রি

Correct Answer / সঠিক উত্তর: B) Stack / স্ট্যাক

Explanation / ব্যাখ্যা: The system uses a call stack to manage function calls. When a function is called, its state (local variables, return address) is pushed onto the stack. When it returns, it’s popped off. This mechanism naturally supports recursion.
সিস্টেম ফাংশন কল পরিচালনা করতে একটি কল স্ট্যাক ব্যবহার করে। যখন একটি ফাংশন কল করা হয়, তার অবস্থা (লোকাল ভেরিয়েবল, রিটার্ন অ্যাড্রেস) স্ট্যাকের উপর পুশ করা হয়। যখন এটি রিটার্ন করে, তখন এটি পপ করা হয়। এই প্রক্রিয়াটি স্বাভাবিকভাবেই রিকার্সন সমর্থন করে।

26. A graph where every edge is one-way is called a: / একটি গ্রাফ যেখানে প্রতিটি এজ একমুখী, তাকে কী বলা হয়?

A) Undirected Graph / আনডাইরেক্টেড গ্রাফ

B) Directed Graph (Digraph) / ডাইরেক্টেড গ্রাফ (ডিগ্রাফ)

C) Complete Graph / কমপ্লিট গ্রাফ

D) Weighted Graph / ওয়েটেড গ্রাফ

Correct Answer / সঠিক উত্তর: B) Directed Graph (Digraph) / ডাইরেক্টেড গ্রাফ (ডিগ্রাফ)

Explanation / ব্যাখ্যা: In a directed graph or digraph, edges have a direction associated with them. An edge (u, v) goes from vertex u to vertex v. In an undirected graph, edges have no direction.
একটি ডাইরেক্টেড গ্রাফ বা ডিগ্রাফে, এজগুলির সাথে একটি দিক যুক্ত থাকে। একটি এজ (u, v) ভার্টেক্স u থেকে ভার্টেক্স v-তে যায়। একটি আনডাইরেক্টেড গ্রাফে, এজের কোনো দিক থাকে না।

27. Which of these sorting algorithms has the best average-case time complexity? / এই সর্টিং অ্যালগরিদমগুলির মধ্যে কোনটির গড় (average-case) টাইম কমপ্লেক্সিটি সবচেয়ে ভালো?

A) Bubble Sort / বাবল সর্ট

B) Selection Sort / সিলেকশন সর্ট

C) Insertion Sort / ইনসারশন সর্ট

D) Quick Sort / কুইক সর্ট

Correct Answer / সঠিক উত্তর: D) Quick Sort / কুইক সর্ট

Explanation / ব্যাখ্যা: Quick Sort and Merge Sort both have an average-case time complexity of O(n log n), which is much better than the O(n^2) of Bubble, Selection, and Insertion Sort. Quick Sort is often faster in practice due to lower constant factors.
কুইক সর্ট এবং মার্জ সর্ট উভয়েরই গড় টাইম কমপ্লেক্সিটি O(n log n), যা বাবল, সিলেকশন এবং ইনসারশন সর্টের O(n^2) এর চেয়ে অনেক ভালো। কুইক সর্ট প্রায়শই বাস্তবে কম কনস্ট্যান্ট ফ্যাক্টরের কারণে দ্রুততর হয়।

28. The first node in a linked list is called the: / একটি লিঙ্কড লিস্টের প্রথম নোডকে কী বলা হয়?

A) Root / রুট

B) Head / হেড

C) Tail / টেইল

D) Base / বেস

Correct Answer / সঠিক উত্তর: B) Head / হেড

Explanation / ব্যাখ্যা: The ‘Head’ is a pointer that points to the first node of the linked list. The last node typically points to NULL, indicating the end of the list.
‘হেড’ হলো একটি পয়েন্টার যা লিঙ্কড লিস্টের প্রথম নোডকে নির্দেশ করে। শেষ নোডটি সাধারণত NULL-কে নির্দেশ করে, যা লিস্টের শেষ নির্দেশ করে।

29. Which data structure is used for Breadth-First Search (BFS) in a graph? / একটি গ্রাফে ব্রেথ-ফার্স্ট সার্চ (BFS) এর জন্য কোন ডেটা স্ট্রাকচার ব্যবহার করা হয়?

A) Stack / স্ট্যাক

B) Queue / কিউ

C) Array / অ্যারে

D) Tree / ট্রি

Correct Answer / সঠিক উত্তর: B) Queue / কিউ

Explanation / ব্যাখ্যা: BFS explores a graph level by level. It uses a queue to keep track of the nodes to visit next. Nodes at the current level are processed, and their unvisited neighbors are added to the queue for the next level.
BFS একটি গ্রাফকে লেভেল বাই লেভেল অন্বেষণ করে। এটি পরবর্তী পরিদর্শনের জন্য নোডগুলির ট্র্যাক রাখতে একটি কিউ ব্যবহার করে। বর্তমান লেভেলের নোডগুলি প্রক্রিয়া করা হয়, এবং তাদের অদেখা প্রতিবেশীদের পরবর্তী লেভেলের জন্য কিউতে যোগ করা হয়।

30. In a doubly linked list, each node has pointers to: / একটি ডাবলি লিঙ্কড লিস্টে, প্রতিটি নোডের পয়েন্টার থাকে:

A) Only the next node / শুধুমাত্র পরবর্তী নোডের দিকে

B) Only the previous node / শুধুমাত্র পূর্ববর্তী নোডের দিকে

C) Both the next and previous nodes / পরবর্তী এবং পূর্ববর্তী উভয় নোডের দিকে

D) The head node / হেড নোডের দিকে

Correct Answer / সঠিক উত্তর: C) Both the next and previous nodes / পরবর্তী এবং পূর্ববর্তী উভয় নোডের দিকে

Explanation / ব্যাখ্যা: A doubly linked list node contains three fields: a data field, a pointer to the next node (next pointer), and a pointer to the previous node (previous pointer). This allows for traversal in both forward and backward directions.
একটি ডাবলি লিঙ্কড লিস্ট নোডে তিনটি ফিল্ড থাকে: একটি ডেটা ফিল্ড, পরবর্তী নোডের একটি পয়েন্টার (নেক্সট পয়েন্টার), এবং পূর্ববর্তী নোডের একটি পয়েন্টার (প্রিভিয়াস পয়েন্টার)। এটি সামনে এবং পিছনে উভয় দিকে ট্র্যাভার্সালের অনুমতি দেয়।

31. What is the time complexity of linear search? / লিনিয়ার সার্চের টাইম কমপ্লেক্সিটি কত?

A) O(1)

B) O(log n)

C) O(n)

D) O(n^2)

Correct Answer / সঠিক উত্তর: C) O(n)

Explanation / ব্যাখ্যা: In the worst case, linear search has to scan through all ‘n’ elements of the list to find the target or determine it’s not present. Therefore, its time complexity is O(n).
সবচেয়ে খারাপ ক্ষেত্রে, লিনিয়ার সার্চকে লক্ষ্য খুঁজে পেতে বা এটি উপস্থিত নেই তা নির্ধারণ করতে তালিকার সমস্ত ‘n’ উপাদানের মধ্যে দিয়ে যেতে হয়। তাই এর টাইম কমপ্লেক্সিটি O(n)।

32. A data structure where elements are not stored in contiguous memory locations is: / একটি ডেটা স্ট্রাকচার যেখানে উপাদানগুলি সংলগ্ন মেমরি অবস্থানে সংরক্ষণ করা হয় না:

A) Array / অ্যারে

B) Linked List / লিঙ্কড লিস্ট

C) Stack (if implemented with array) / স্ট্যাক (যদি অ্যারে দিয়ে বাস্তবায়ন করা হয়)

D) All of the above / উপরের সবগুলো

Correct Answer / সঠিক উত্তর: B) Linked List / লিঙ্কড লিস্ট

Explanation / ব্যাখ্যা: In a linked list, nodes are scattered in memory and connected using pointers. In contrast, arrays store elements in a single, contiguous block of memory.
একটি লিঙ্কড লিস্টে, নোডগুলি মেমরিতে ছড়িয়ে ছিটিয়ে থাকে এবং পয়েন্টার ব্যবহার করে সংযুক্ত থাকে। এর বিপরীতে, অ্যারে একটি একক, সংলগ্ন মেমরি ব্লকে উপাদানগুলি সংরক্ষণ করে।

33. Which data structure is used for implementing a priority queue? / একটি প্রায়োরিটি কিউ বাস্তবায়নের জন্য কোন ডেটা স্ট্রাকচার ব্যবহার করা হয়?

A) Stack / স্ট্যাক

B) Simple Queue / সিম্পল কিউ

C) Heap / হিপ

D) Array / অ্যারে

Correct Answer / সঠিক উত্তর: C) Heap / হিপ

Explanation / ব্যাখ্যা: A heap is a specialized tree-based data structure that is an efficient implementation of a priority queue. It allows for quick access to the highest (or lowest) priority element.
হিপ হলো একটি বিশেষ ট্রি-ভিত্তিক ডেটা স্ট্রাকচার যা একটি প্রায়োরিটি কিউ-এর একটি কার্যকর বাস্তবায়ন। এটি সর্বোচ্চ (বা সর্বনিম্ন) অগ্রাধিকারের উপাদানে দ্রুত অ্যাক্সেসের অনুমতি দেয়।

34. The depth of a tree is the length of the longest path from the root to a: / একটি ট্রির ডেপথ হলো রুট থেকে দীর্ঘতম পথের দৈর্ঘ্য যা পৌঁছায়:

A) Sibling node / সিবলিং নোডে

B) Internal node / ইন্টারনাল নোডে

C) Leaf node / লিফ নোডে

D) Parent node / প্যারেন্ট নোডে

Correct Answer / সঠিক উত্তর: C) Leaf node / লিফ নোডে

Explanation / ব্যাখ্যা: The depth (or height) of a tree is defined as the length of the longest path from the root node to any leaf node.
একটি ট্রির ডেপথ (বা উচ্চতা) রুট নোড থেকে যেকোনো লিফ নোড পর্যন্ত দীর্ঘতম পথের দৈর্ঘ্য হিসাবে সংজ্ঞায়িত করা হয়।

35. Which sorting algorithm repeatedly steps through the list, compares adjacent elements and swaps them if they are in the wrong order? / কোন সর্টিং অ্যালগরিদম বারবার তালিকার মধ্য দিয়ে যায়, সংলগ্ন উপাদানগুলির তুলনা করে এবং ভুল ক্রমে থাকলে তাদের অদলবদল করে?

A) Merge Sort / মার্জ সর্ট

B) Quick Sort / কুইক সর্ট

C) Bubble Sort / বাবল সর্ট

D) Selection Sort / সিলেকশন সর্ট

Correct Answer / সঠিক উত্তর: C) Bubble Sort / বাবল সর্ট

Explanation / ব্যাখ্যা: This describes the working principle of Bubble Sort. It’s a simple comparison-based sorting algorithm where heavier elements “bubble” to the end of the list.
এটি বাবল সর্টের কার্যনীতি বর্ণনা করে। এটি একটি সহজ তুলনা-ভিত্তিক সর্টিং অ্যালগরিদম যেখানে ভারী উপাদানগুলি তালিকার শেষে “বুদবুদ” এর মতো চলে যায়।

36. What is the Big O notation used for? / বিগ O নোটেশন কীসের জন্য ব্যবহৃত হয়?

A) To describe the exact runtime of an algorithm / একটি অ্যালগরিদমের সঠিক রানটাইম বর্ণনা করার জন্য

B) To describe the asymptotic upper bound of an algorithm’s complexity / একটি অ্যালগরিদমের কমপ্লেক্সিটির অ্যাসিम्पটোটিক আপার বাউন্ড বর্ণনা করার জন্য

C) To describe the best-case performance / সেরা-কেস পারফরম্যান্স বর্ণনা করার জন্য

D) To count the number of variables / ভেরিয়েবলের সংখ্যা গণনা করার জন্য

Correct Answer / সঠিক উত্তর: B) To describe the asymptotic upper bound of an algorithm’s complexity / একটি অ্যালগরিদমের কমপ্লেক্সিটির অ্যাসিम्पটোটিক আপার বাউন্ড বর্ণনা করার জন্য

Explanation / ব্যাখ্যা: Big O notation is used in computer science to classify algorithms according to how their run time or space requirements grow as the input size grows. It describes the worst-case scenario or the upper bound.
কম্পিউটার বিজ্ঞানে বিগ O নোটেশন অ্যালগরিদমগুলিকে শ্রেণীবদ্ধ করতে ব্যবহৃত হয়, যা ইনপুট আকার বাড়ার সাথে সাথে তাদের রান টাইম বা স্থানের প্রয়োজনীয়তা কীভাবে বৃদ্ধি পায় তা দেখায়। এটি সবচেয়ে খারাপ পরিস্থিতি বা আপার বাউন্ড বর্ণনা করে।

37. In a circular queue, the last element points to the: / একটি সার্কুলার কিউতে, শেষ উপাদানটি নির্দেশ করে:

A) Null / নাল-কে

B) Previous element / পূর্ববর্তী উপাদানকে

C) Head of the queue / কিউ-এর হেডকে

D) First element / প্রথম উপাদানকে

Correct Answer / সঠিক উত্তর: D) First element / প্রথম উপাদানকে

Explanation / ব্যাখ্যা: A circular queue is a linear data structure in which the operations are performed based on FIFO principle and the last position is connected back to the first position to make a circle. This allows for more efficient use of the underlying array.
সার্কুলার কিউ হলো একটি লিনিয়ার ডেটা স্ট্রাকচার যেখানে FIFO নীতির উপর ভিত্তি করে অপারেশন করা হয় এবং শেষ অবস্থানটি প্রথম অবস্থানের সাথে সংযুক্ত হয়ে একটি বৃত্ত তৈরি করে। এটি অন্তর্নিহিত অ্যারের আরও কার্যকর ব্যবহার করতে দেয়।

38. An algorithm is a: / একটি অ্যালগরিদম হলো:

A) A flowchart / একটি ফ্লোচার্ট

B) Step-by-step procedure to solve a problem / একটি সমস্যা সমাধানের জন্য ধাপে ধাপে পদ্ধতি

C) A data structure / একটি ডেটা স্ট্রাকচার

D) A programming language syntax / একটি প্রোগ্রামিং ভাষার সিনট্যাক্স

Correct Answer / সঠিক উত্তর: B) Step-by-step procedure to solve a problem / একটি সমস্যা সমাধানের জন্য ধাপে ধাপে পদ্ধতি

Explanation / ব্যাখ্যা: An algorithm is a finite sequence of well-defined, computer-implementable instructions, typically to solve a class of problems or to perform a computation.
একটি অ্যালগরিদম হলো সু-সংজ্ঞায়িত, কম্পিউটার-বাস্তবায়নযোগ্য নির্দেশাবলীর একটি সসীম ক্রম, যা সাধারণত এক শ্রেণীর সমস্যা সমাধান করতে বা একটি গণনা সম্পাদন করতে ব্যবহৃত হয়।

39. Which data structure is most suitable for reversing a word? / একটি শব্দকে উল্টানোর জন্য কোন ডেটা স্ট্রাকচার সবচেয়ে উপযুক্ত?

A) Queue / কিউ

B) Stack / স্ট্যাক

C) Tree / ট্রি

D) Graph / গ্রাফ

Correct Answer / সঠিক উত্তর: B) Stack / স্ট্যাক

Explanation / ব্যাখ্যা: Due to its LIFO (Last-In, First-Out) property, a stack is perfect for reversing sequences. You can push each character of the word onto the stack and then pop them off to get the reversed word.
এর LIFO (লাস্ট-ইন, ফার্স্ট-আউট) বৈশিষ্ট্যের কারণে, একটি স্ট্যাক ক্রম উল্টানোর জন্য উপযুক্ত। আপনি শব্দের প্রতিটি অক্ষর স্ট্যাকে পুশ করতে পারেন এবং তারপরে উল্টানো শব্দটি পেতে সেগুলিকে পপ করতে পারেন।

40. The number of edges from the root to the node is called ______ of the tree. / রুট থেকে নোড পর্যন্ত এজের সংখ্যাকে ট্রির ______ বলা হয়।

A) Height / উচ্চতা

B) Depth / ডেপথ

C) Length / দৈর্ঘ্য

D) Width / প্রস্থ

Correct Answer / সঠিক উত্তর: B) Depth / ডেপথ

Explanation / ব্যাখ্যা: The depth of a node is the number of edges on the path from the root to that node. The depth of the root node is 0.
একটি নোডের ডেপথ হলো রুট থেকে সেই নোড পর্যন্ত পথের এজের সংখ্যা। রুট নোডের ডেপথ হলো ০।

41. The worst-case time complexity of Quick Sort is: / কুইক সর্টের সবচেয়ে খারাপ (worst-case) টাইম কমপ্লেক্সিটি কত?

A) O(n log n)

B) O(log n)

C) O(n)

D) O(n^2)

Correct Answer / সঠিক উত্তর: D) O(n^2)

Explanation / ব্যাখ্যা: While Quick Sort’s average case is O(n log n), its worst-case performance is O(n^2). This happens when the pivot element chosen is consistently the smallest or largest element in the partition, which often occurs if the array is already sorted.
যদিও কুইক সর্টের গড় কেস O(n log n), এর সবচেয়ে খারাপ পারফরম্যান্স হলো O(n^2)। এটি ঘটে যখন নির্বাচিত পিভট উপাদানটি পার্টিশনের মধ্যে ধারাবাহিকভাবে সবচেয়ে ছোট বা সবচেয়ে বড় উপাদান হয়, যা প্রায়শই ঘটে যদি অ্যারেটি ইতিমধ্যে সাজানো থাকে।

42. A graph with no cycles is called: / কোনো চক্রবিহীন গ্রাফকে কী বলা হয়?

A) Acyclic Graph / অ্যাসাইক্লিক গ্রাফ

B) Cyclic Graph / সাইক্লিক গ্রাফ

C) Complete Graph / কমপ্লিট গ্রাফ

D) Subgraph / সাবগ্রাফ

Correct Answer / সঠিক উত্তর: A) Acyclic Graph / অ্যাসাইক্লিক গ্রাফ

Explanation / ব্যাখ্যা: A graph that does not contain any cycles is known as an acyclic graph. A Directed Acyclic Graph (DAG) is a common and important type of acyclic graph.
যে গ্রাফে কোনো চক্র থাকে না তাকে অ্যাসাইক্লিক গ্রাফ বলা হয়। ডাইরেক্টেড অ্যাসাইক্লিক গ্রাফ (DAG) একটি সাধারণ এবং গুরুত্বপূর্ণ ধরনের অ্যাসাইক্লিক গ্রাফ।

43. Which of the following is NOT a stable sorting algorithm? / নিচের কোনটি একটি স্টেবল সর্টিং অ্যালগরিদম নয়?

A) Bubble Sort / বাবল সর্ট

B) Merge Sort / মার্জ সর্ট

C) Quick Sort / কুইক সর্ট

D) Insertion Sort / ইনসারশন সর্ট

Correct Answer / সঠিক উত্তর: C) Quick Sort / কুইক সর্ট

Explanation / ব্যাখ্যা: A sorting algorithm is stable if it preserves the relative order of equal elements. Bubble, Merge, and Insertion sort are stable. Quick Sort (in its typical implementation) is not stable.
একটি সর্টিং অ্যালগরিদম স্টেবল হয় যদি এটি সমান উপাদানগুলির আপেক্ষিক ক্রম সংরক্ষণ করে। বাবল, মার্জ, এবং ইনসারশন সর্ট স্টেবল। কুইক সর্ট (এর সাধারণ বাস্তবায়নে) স্টেবল নয়।

44. The memory address of the first element of an array is called: / একটি অ্যারের প্রথম উপাদানের মেমরি অ্যাড্রেসকে কী বলা হয়?

A) Base address / বেস অ্যাড্রেস

B) First address / ফার্স্ট অ্যাড্রেস

C) Location address / লোকেশন অ্যাড্রেস

D) Pointer address / পয়েন্টার অ্যাড্রেস

Correct Answer / সঠিক উত্তর: A) Base address / বেস অ্যাড্রেস

Explanation / ব্যাখ্যা: The base address is the starting memory address of an array. The address of any other element can be calculated by using this base address, the element’s index, and the size of each element.
বেস অ্যাড্রেস হলো একটি অ্যারের প্রারম্ভিক মেমরি অ্যাড্রেস। অন্য যেকোনো উপাদানের ঠিকানা এই বেস অ্যাড্রেস, উপাদানের ইনডেক্স এবং প্রতিটি উপাদানের আকার ব্যবহার করে গণনা করা যেতে পারে।

45. Which data structure is used for Depth First Search (DFS) in a graph? / একটি গ্রাফে ডেপথ ফার্স্ট সার্চ (DFS) এর জন্য কোন ডেটা স্ট্রাকচার ব্যবহার করা হয়?

A) Queue / কিউ

B) Stack / স্ট্যাক

C) Linked List / লিঙ্কড লিস্ট

D) Heap / হিপ

Correct Answer / সঠিক উত্তর: B) Stack / স্ট্যাক

Explanation / ব্যাখ্যা: DFS explores as far as possible along each branch before backtracking. This “go deep first” behavior is naturally implemented using a stack (either explicitly or implicitly through recursion).
DFS ব্যাকট্র্যাকিংয়ের আগে প্রতিটি শাখা বরাবর যতদূর সম্ভব অন্বেষণ করে। এই “প্রথমে গভীরে যাও” আচরণটি স্বাভাবিকভাবে একটি স্ট্যাক ব্যবহার করে বাস্তবায়ন করা হয় (হয় স্পষ্টভাবে বা রিকার্সনের মাধ্যমে)।

46. If a node has no parent, it is a: / যদি একটি নোডের কোনো প্যারেন্ট না থাকে, তবে এটি একটি:

A) Leaf node / লিফ নোড

B) Root node / রুট নোড

C) Orphan node / অরফান নোড

D) Sibling node / সিবলিং নোড

Correct Answer / সঠিক উত্তর: B) Root node / রুট নোড

Explanation / ব্যাখ্যা: In a tree data structure, the root is the only node that does not have a parent. All other nodes have exactly one parent.
ট্রি ডেটা স্ট্রাকচারে, রুট হলো একমাত্র নোড যার কোনো প্যারেন্ট নেই। অন্য সব নোডের ঠিক একটি প্যারেন্ট থাকে।

47. The process of arranging data in a specific order is called: / ডেটা একটি নির্দিষ্ট ক্রমে সাজানোর প্রক্রিয়াকে কী বলা হয়?

A) Searching / সার্চিং

B) Sorting / সর্টিং

C) Merging / মার্জিং

D) Traversing / ট্র্যাভার্সিং

Correct Answer / সঠিক উত্তর: B) Sorting / সর্টিং

Explanation / ব্যাখ্যা: Sorting is the process of arranging items in a collection (like an array) into a particular order, such as numerical or lexicographical order.
সর্টিং হলো একটি সংগ্রহের (যেমন একটি অ্যারে) আইটেমগুলিকে একটি নির্দিষ্ট ক্রমে সাজানোর প্রক্রিয়া, যেমন সংখ্যাসূচক বা আভিধানিক ক্রম।

48. Which is the most efficient sorting algorithm in terms of worst-case time complexity? / সবচেয়ে খারাপ (worst-case) টাইম কমপ্লেক্সিটির দিক থেকে কোন সর্টিং অ্যালগরিদমটি সবচেয়ে কার্যকর?

A) Quick Sort / কুইক সর্ট

B) Bubble Sort / বাবল সর্ট

C) Merge Sort / মার্জ সর্ট

D) Selection Sort / সিলেকশন সর্ট

Correct Answer / সঠিক উত্তর: C) Merge Sort / মার্জ সর্ট

Explanation / ব্যাখ্যা: Merge Sort has a guaranteed worst-case time complexity of O(n log n). Quick Sort’s worst case is O(n^2), and Bubble/Selection Sort’s worst case is also O(n^2).
মার্জ সর্টের একটি নিশ্চিত সবচেয়ে খারাপ টাইম কমপ্লেক্সিটি O(n log n) আছে। কুইক সর্টের সবচেয়ে খারাপ কেস O(n^2), এবং বাবল/সিলেকশন সর্টের সবচেয়ে খারাপ কেসও O(n^2)।

49. A linked list in which the last node points back to the first node is a: / একটি লিঙ্কড লিস্ট যেখানে শেষ নোডটি প্রথম নোডকে নির্দেশ করে, তা হলো একটি:

A) Singly Linked List / সিঙ্গলি লিঙ্কড লিস্ট

B) Doubly Linked List / ডাবলি লিঙ্কড লিস্ট

C) Circular Linked List / সার্কুলার লিঙ্কড লিস্ট

D) Header Linked List / হেডার লিঙ্কড লিস্ট

Correct Answer / সঠিক উত্তর: C) Circular Linked List / সার্কুলার লিঙ্কড লিস্ট

Explanation / ব্যাখ্যা: In a circular linked list, the ‘next’ pointer of the last node points to the head node instead of pointing to NULL. This creates a circular structure.
একটি সার্কুলার লিঙ্কড লিস্টে, শেষ নোডের ‘নেক্সট’ পয়েন্টারটি NULL-কে নির্দেশ করার পরিবর্তে হেড নোডকে নির্দেশ করে। এটি একটি বৃত্তাকার কাঠামো তৈরি করে।

50. A collection of nodes and edges is called a: / নোড এবং এজের একটি সংগ্রহকে কী বলা হয়?

A) Tree / ট্রি

B) Graph / গ্রাফ

C) Linked List / লিঙ্কড লিস্ট

D) Stack / স্ট্যাক

Correct Answer / সঠিক উত্তর: B) Graph / গ্রাফ

Explanation / ব্যাখ্যা: A graph is a non-linear data structure consisting of a set of vertices (or nodes) and a set of edges that connect pairs of vertices.
গ্রাফ হলো একটি নন-লিনিয়ার ডেটা স্ট্রাকচার যা এক সেট ভার্টেক্স (বা নোড) এবং এক সেট এজ নিয়ে গঠিত যা জোড়া ভার্টেক্সকে সংযুক্ত করে।

51. What does ‘NULL’ represent in a linked list pointer field? / একটি লিঙ্কড লিস্টের পয়েন্টার ফিল্ডে ‘NULL’ কী নির্দেশ করে?

A) The start of the list / লিস্টের শুরু

B) A node with data 0 / 0 ডেটা সহ একটি নোড

C) The end of the list / লিস্টের শেষ

D) An error / একটি ত্রুটি

Correct Answer / সঠিক উত্তর: C) The end of the list / লিস্টের শেষ

Explanation / ব্যাখ্যা: In a standard (non-circular) linked list, the ‘next’ pointer of the last node is set to NULL to signify that there are no more nodes in the list.
একটি স্ট্যান্ডার্ড (নন-সার্কুলার) লিঙ্কড লিস্টে, শেষ নোডের ‘নেক্সট’ পয়েন্টারটি NULL এ সেট করা হয়, যা নির্দেশ করে যে লিস্টে আর কোনো নোড নেই।

52. Which data structure is best for implementing “Undo” functionality in a text editor? / একটি টেক্সট এডিটরে “Undo” কার্যকারিতা বাস্তবায়নের জন্য কোন ডেটা স্ট্রাকচার সেরা?

A) Queue / কিউ

B) Linked List / লিঙ্কড লিস্ট

C) Tree / ট্রি

D) Stack / স্ট্যাক

Correct Answer / সঠিক উত্তর: D) Stack / স্ট্যাক

Explanation / ব্যাখ্যা: The “Undo” feature requires reversing actions in the order they were performed. A stack’s LIFO (Last-In, First-Out) nature is perfect for this: the last action performed is pushed onto the stack, and “Undo” pops it off.
“Undo” বৈশিষ্ট্যের জন্য ক্রিয়াগুলিকে যে ক্রমে সম্পাদন করা হয়েছিল তার বিপরীত ক্রমে আনতে হয়। স্ট্যাকের LIFO (লাস্ট-ইন, ফার্স্ট-আউট) প্রকৃতি এর জন্য উপযুক্ত: সর্বশেষ সম্পাদিত ক্রিয়াটি স্ট্যাকে পুশ করা হয় এবং “Undo” এটিকে পপ করে।

53. The complexity measured by the amount of memory an algorithm needs is called: / একটি অ্যালগরিদমের জন্য প্রয়োজনীয় মেমরির পরিমাণ দ্বারা পরিমাপ করা কমপ্লেক্সিটিকে কী বলা হয়?

A) Time Complexity / টাইম কমপ্লেক্সিটি

B) Space Complexity / স্পেস কমপ্লেক্সিটি

C) Algorithmic Complexity / অ্যালগরিদমিক কমপ্লেক্সিটি

D) Data Complexity / ডেটা কমপ্লেক্সিটি

Correct Answer / সঠিক উত্তর: B) Space Complexity / স্পেস কমপ্লেক্সিটি

Explanation / ব্যাখ্যা: Space complexity analyzes the total amount of memory space an algorithm or program uses, including the space for input values and any auxiliary space used during execution, as a function of the input size.
স্পেস কমপ্লেক্সিটি একটি অ্যালগরিদম বা প্রোগ্রামের ব্যবহৃত মোট মেমরি স্থানের পরিমাণ বিশ্লেষণ করে, যার মধ্যে ইনপুট মানগুলির জন্য স্থান এবং কার্যকর করার সময় ব্যবহৃত যেকোনো সহায়ক স্থান অন্তর্ভুক্ত, যা ইনপুট আকারের একটি ফাংশন হিসাবে প্রকাশ করা হয়।

54. In a complete binary tree, every level is completely filled, except possibly the: / একটি কমপ্লিট বাইনারি ট্রি-তে, প্রতিটি লেভেল সম্পূর্ণরূপে পূর্ণ থাকে, সম্ভবত কোনটি ছাড়া?

A) First level / প্রথম লেভেল

B) Second level / দ্বিতীয় লেভেল

C) Middle level / মধ্যম লেভেল

D) Last level / শেষ লেভেল

Correct Answer / সঠিক উত্তর: D) Last level / শেষ লেভেল

Explanation / ব্যাখ্যা: A complete binary tree is a binary tree in which every level, except possibly the last, is completely filled, and all nodes in the last level are as far left as possible.
একটি কমপ্লিট বাইনারি ট্রি হলো এমন একটি বাইনারি ট্রি যেখানে প্রতিটি লেভেল, সম্ভবত শেষটি ছাড়া, সম্পূর্ণরূপে পূর্ণ থাকে এবং শেষ লেভেলের সমস্ত নোড যতদূর সম্ভব বাম দিকে থাকে।

55. Which sorting algorithm divides the array into a sorted and an unsorted region? / কোন সর্টিং অ্যালগরিদম অ্যারেটিকে একটি সাজানো (sorted) এবং একটি অ-সাজানো (unsorted) অঞ্চলে বিভক্ত করে?

A) Bubble Sort / বাবল সর্ট

B) Selection Sort / সিলেকশন সর্ট

C) Merge Sort / মার্জ সর্ট

D) Quick Sort / কুইক সর্ট

Correct Answer / সঠিক উত্তর: B) Selection Sort / সিলেকশন সর্ট

Explanation / ব্যাখ্যা: Selection sort works by repeatedly finding the minimum element from the unsorted part of the array and putting it at the beginning of the sorted part. Insertion sort also works this way, but Selection Sort is a clearer example of this division.
সিলেকশন সর্ট অ্যারের অ-সাজানো অংশ থেকে বারবার সর্বনিম্ন উপাদান খুঁজে বের করে এবং এটিকে সাজানো অংশের শুরুতে রাখে। ইনসারশন সর্টও এইভাবে কাজ করে, কিন্তু সিলেকশন সর্ট এই বিভাজনের একটি পরিষ্কার উদাহরণ।

56. What is an edge connecting a vertex to itself called? / একটি ভার্টেক্সকে নিজের সাথে সংযুক্তকারী এজকে কী বলা হয়?

A) Loop (or Self-loop) / লুপ (বা সেলফ-লুপ)

B) Cycle / সাইকেল

C) Link / লিঙ্ক

D) Arc / আর্ক

Correct Answer / সঠিক উত্তর: A) Loop (or Self-loop) / লুপ (বা সেলফ-লুপ)

Explanation / ব্যাখ্যা: In graph theory, a loop (also called a self-loop or a buckle) is an edge that connects a vertex to itself.
গ্রাফ তত্ত্বে, একটি লুপ (সেলফ-লুপ বা বকলও বলা হয়) হলো একটি এজ যা একটি ভার্টেক্সকে নিজের সাথে সংযুক্ত করে।

57. The ‘front’ and ‘rear’ pointers are associated with which data structure? / ‘ফ্রন্ট’ এবং ‘রিয়ার’ পয়েন্টারগুলি কোন ডেটা স্ট্রাকচারের সাথে যুক্ত?

A) Stack / স্ট্যাক

B) Queue / কিউ

C) Linked List / লিঙ্কড লিস্ট

D) Tree / ট্রি

Correct Answer / সঠিক উত্তর: B) Queue / কিউ

Explanation / ব্যাখ্যা: A queue maintains two pointers: ‘front’, which points to the first element to be dequeued, and ‘rear’, which points to the position where the next element will be enqueued.
একটি কিউ দুটি পয়েন্টার বজায় রাখে: ‘ফ্রন্ট’, যা ডিকিউ করার জন্য প্রথম উপাদানকে নির্দেশ করে, এবং ‘রিয়ার’, যা পরবর্তী উপাদানটি এনকিউ করার অবস্থানকে নির্দেশ করে।

58. The process of finding the location of a specific element in a list is called: / একটি তালিকায় একটি নির্দিষ্ট উপাদানের অবস্থান খোঁজার প্রক্রিয়াকে কী বলা হয়?

A) Sorting / সর্টিং

B) Searching / সার্চিং

C) Traversing / ট্র্যাভার্সিং

D) Inserting / ইনসার্টিং

Correct Answer / সঠিক উত্তর: B) Searching / সার্চিং

Explanation / ব্যাখ্যা: Searching is the algorithmic process of finding a particular item with specified properties among a collection of items.
সার্চিং হলো একটি অ্যালগরিদমিক প্রক্রিয়া যা একটি আইটেমের সংগ্রহ থেকে নির্দিষ্ট বৈশিষ্ট্যযুক্ত একটি বিশেষ আইটেম খুঁজে বের করে।

59. A tree is a special type of: / একটি ট্রি হলো একটি বিশেষ ধরনের:

A) Linked List / লিঙ্কড লিস্ট

B) Array / অ্যারে

C) Graph / গ্রাফ

D) Stack / স্ট্যাক

Correct Answer / সঠিক উত্তর: C) Graph / গ্রাফ

Explanation / ব্যাখ্যা: A tree can be defined as a connected, acyclic, undirected graph. It is a more restricted form of a graph.
একটি ট্রিকে একটি সংযুক্ত, অ্যাসাইক্লিক, আনডাইরেক্টেড গ্রাফ হিসাবে সংজ্ঞায়িত করা যেতে পারে। এটি গ্রাফের একটি আরও সীমাবদ্ধ রূপ।

60. In an array, elements are identified by their: / একটি অ্যারেতে, উপাদানগুলি তাদের ______ দ্বারা চিহ্নিত করা হয়:

A) Value / মান

B) Index / ইনডেক্স

C) Pointer / পয়েন্টার

D) Name / নাম

Correct Answer / সঠিক উত্তর: B) Index / ইনডেক্স

Explanation / ব্যাখ্যা: Each element in an array has a unique index, which is an integer that specifies its position in the array. This index is used to access the element.
একটি অ্যারের প্রতিটি উপাদানের একটি অনন্য ইনডেক্স থাকে, যা একটি পূর্ণসংখ্যা এবং অ্যারেতে এর অবস্থান নির্দিষ্ট করে। এই ইনডেক্সটি উপাদানটি অ্যাক্সেস করতে ব্যবহৃত হয়।

61. Which of the following is an advantage of a linked list over an array? / অ্যারের চেয়ে লিঙ্কড লিস্টের একটি সুবিধা নিচের কোনটি?

A) Random access is faster / র‍্যান্ডম অ্যাক্সেস দ্রুততর

B) Less memory usage per element / প্রতি উপাদানে কম মেমরি ব্যবহার

C) Dynamic size / ডাইনামিক আকার

D) Contiguous memory allocation / সংলগ্ন মেমরি বরাদ্দ

Correct Answer / সঠিক উত্তর: C) Dynamic size / ডাইনামিক আকার

Explanation / ব্যাখ্যা: The main advantage of a linked list is its dynamic size. It can grow or shrink during runtime as needed, unlike arrays which have a fixed size.
লিঙ্কড লিস্টের প্রধান সুবিধা হলো এর ডাইনামিক আকার। এটি প্রয়োজন অনুযায়ী রানটাইমের সময় বাড়তে বা কমতে পারে, যা নির্দিষ্ট আকারের অ্যারের মতো নয়।

62. Pre-order traversal is also known as: / প্রি-অর্ডার ট্র্যাভার্সাল কী নামেও পরিচিত?

A) Depth-first traversal / ডেপথ-ফার্স্ট ট্র্যাভার্সাল

B) Breadth-first traversal / ব্রেথ-ফার্স্ট ট্র্যাভার্সাল

C) Level-order traversal / লেভেল-অর্ডার ট্র্যাভার্সাল

D) Sorted traversal / সর্টেড ট্র্যাভার্সাল

Correct Answer / সঠিক উত্তর: A) Depth-first traversal / ডেপথ-ফার্স্ট ট্র্যাভার্সাল

Explanation / ব্যাখ্যা: Pre-order, in-order, and post-order are all types of Depth-First Traversal (DFS) for trees, as they explore as far down a path as possible before backtracking.
প্রি-অর্ডার, ইন-অর্ডার, এবং পোস্ট-অর্ডার সবই ট্রির জন্য ডেপথ-ফার্স্ট ট্র্যাভার্সাল (DFS) এর প্রকার, কারণ তারা ব্যাকট্র্যাকিংয়ের আগে একটি পথ ধরে যতদূর সম্ভব অন্বেষণ করে।

63. Which operation is more efficient in a doubly linked list than in a singly linked list? / সিঙ্গলি লিঙ্কড লিস্টের চেয়ে ডাবলি লিঙ্কড লিস্টে কোন অপারেশনটি বেশি কার্যকর?

A) Traversing from head to tail / হেড থেকে টেইল পর্যন্ত ট্র্যাভার্স করা

B) Deleting a given node / একটি প্রদত্ত নোড ডিলিট করা

C) Searching for an element / একটি উপাদান খোঁজা

D) Inserting a node at the beginning / শুরুতে একটি নোড ইনসার্ট করা

Correct Answer / সঠিক উত্তর: B) Deleting a given node / একটি প্রদত্ত নোড ডিলিট করা

Explanation / ব্যাখ্যা: In a singly linked list, to delete a node, you need a pointer to its previous node. In a doubly linked list, each node already has a pointer to its previous node, making deletion more efficient if you only have a pointer to the node to be deleted.
একটি সিঙ্গলি লিঙ্কড লিস্টে, একটি নোড ডিলিট করতে, আপনার এর পূর্ববর্তী নোডের একটি পয়েন্টার প্রয়োজন। একটি ডাবলি লিঙ্কড লিস্টে, প্রতিটি নোডের ইতিমধ্যেই এর পূর্ববর্তী নোডের একটি পয়েন্টার থাকে, যা ডিলিট করাকে আরও কার্যকর করে তোলে যদি আপনার কাছে কেবল ডিলিট করার নোডের একটি পয়েন্টার থাকে।

64. An array is a collection of items of the ______ data type. / একটি অ্যারে হলো ______ ডেটা টাইপের আইটেমের একটি সংগ্রহ।

A) Same / একই

B) Different / ভিন্ন

C) Character / ক্যারেক্টার

D) Integer / ইন্টিজার

Correct Answer / সঠিক উত্তর: A) Same / একই

Explanation / ব্যাখ্যা: An array is defined as a collection of homogeneous elements, meaning all items stored in the array must be of the same data type.
একটি অ্যারে সমজাতীয় উপাদানের একটি সংগ্রহ হিসাবে সংজ্ঞায়িত করা হয়, যার অর্থ অ্যারেতে সংরক্ষিত সমস্ত আইটেম অবশ্যই একই ডেটা টাইপের হতে হবে।

65. A tree with ‘n’ nodes will have how many edges? / ‘n’ সংখ্যক নোড সহ একটি ট্রি-তে কয়টি এজ থাকবে?

A) n

B) n+1

C) n-1

D) n/2

Correct Answer / সঠিক উত্তর: C) n-1

Explanation / ব্যাখ্যা: A key property of a tree is that for a tree with ‘n’ nodes (vertices), it will always have exactly ‘n-1’ edges.
একটি ট্রির একটি মূল বৈশিষ্ট্য হলো ‘n’ সংখ্যক নোড (ভার্টেক্স) সহ একটি ট্রি-তে সর্বদা ঠিক ‘n-1’ সংখ্যক এজ থাকবে।

66. What is the best-case time complexity of Insertion Sort? / ইনসারশন সর্টের সেরা (best-case) টাইম কমপ্লেক্সিটি কত?

A) O(n^2)

B) O(n log n)

C) O(n)

D) O(1)

Correct Answer / সঠিক উত্তর: C) O(n)

Explanation / ব্যাখ্যা: The best-case for Insertion Sort occurs when the input array is already sorted. In this scenario, it only needs to iterate through the list once, resulting in a linear time complexity of O(n).
ইনসারশন সর্টের জন্য সেরা কেস ঘটে যখন ইনপুট অ্যারেটি ইতিমধ্যে সাজানো থাকে। এই পরিস্থিতিতে, এটিকে কেবল একবার তালিকার মধ্য দিয়ে যেতে হয়, যার ফলে একটি রৈখিক টাইম কমপ্লেক্সিটি O(n) হয়।

67. If a graph has V vertices and E edges, what is the space complexity of adjacency matrix representation? / যদি একটি গ্রাফের V সংখ্যক ভার্টেক্স এবং E সংখ্যক এজ থাকে, তবে অ্যাডজাসেন্সি ম্যাট্রিক্স উপস্থাপনের স্পেস কমপ্লেক্সিটি কত?

A) O(V + E)

B) O(E)

C) O(V)

D) O(V^2)

Correct Answer / সঠিক উত্তর: D) O(V^2)

Explanation / ব্যাখ্যা: An adjacency matrix represents a graph as a V x V matrix of booleans (or integers). Therefore, it always requires V*V space, regardless of the number of edges (E).
একটি অ্যাডজাসেন্সি ম্যাট্রিক্স একটি গ্রাফকে একটি V x V বুলিয়ান (বা ইন্টিজার) ম্যাট্রিক্স হিসাবে উপস্থাপন করে। তাই, এজের সংখ্যা (E) নির্বিশেষে এটি সর্বদা V*V স্থান প্রয়োজন।

68. A data structure that allows insertion at one end and deletion at the other is a: / একটি ডেটা স্ট্রাকচার যা এক প্রান্তে সন্নিবেশ এবং অন্য প্রান্তে অপসারণের অনুমতি দেয়, তা হলো একটি:

A) Stack / স্ট্যাক

B) Queue / কিউ

C) Deque / ডেক

D) Priority Queue / প্রায়োরিটি কিউ

Correct Answer / সঠিক উত্তর: B) Queue / কিউ

Explanation / ব্যাখ্যা: This is the classic definition of a queue (FIFO). Elements are added (enqueued) at the rear and removed (dequeued) from the front.
এটি একটি কিউ (FIFO) এর ক্লাসিক সংজ্ঞা। উপাদানগুলি পিছনে যোগ করা হয় (এনকিউ) এবং সামনে থেকে সরানো হয় (ডিকিউ)।

69. Post-order traversal sequence is: / পোস্ট-অর্ডার ট্র্যাভার্সাল ক্রম হলো:

A) Root, Left, Right

B) Left, Root, Right

C) Left, Right, Root

D) Right, Left, Root

Correct Answer / সঠিক উত্তর: C) Left, Right, Root

Explanation / ব্যাখ্যা: In a post-order traversal, the left subtree is visited first, then the right subtree, and finally the root node is visited.
একটি পোস্ট-অর্ডার ট্র্যাভার্সালে, প্রথমে বাম সাবট্রি পরিদর্শন করা হয়, তারপর ডান সাবট্রি, এবং অবশেষে রুট নোড পরিদর্শন করা হয়।

70. An empty list is a list with: / একটি খালি লিস্ট হলো এমন একটি লিস্ট যেখানে:

A) 1 element / ১টি উপাদান থাকে

B) 0 elements / ০টি উপাদান থাকে

C) A NULL element / একটি NULL উপাদান থাকে

D) A negative number of elements / ঋণাত্মক সংখ্যক উপাদান থাকে

Correct Answer / সঠিক উত্তর: B) 0 elements / ০টি উপাদান থাকে

Explanation / ব্যাখ্যা: By definition, a list (or any collection) is empty if it contains zero elements.
সংজ্ঞা অনুসারে, একটি লিস্ট (বা যেকোনো সংগ্রহ) খালি থাকে যদি এতে শূন্যটি উপাদান থাকে।

71. Which of the following data structures is not linear? / নিচের কোনটি লিনিয়ার ডেটা স্ট্রাকচার নয়?

A) Strings / স্ট্রিং

B) Lists / লিস্ট

C) Queues / কিউ

D) Binary Heap / বাইনারি হিপ

Correct Answer / সঠিক উত্তর: D) Binary Heap / বাইনারি হিপ

Explanation / ব্যাখ্যা: A Binary Heap is a tree-based data structure, which is non-linear. Strings, lists, and queues arrange elements in a linear sequence.
একটি বাইনারি হিপ একটি ট্রি-ভিত্তিক ডেটা স্ট্রাকচার, যা নন-লিনিয়ার। স্ট্রিং, লিস্ট এবং কিউ উপাদানগুলিকে একটি লিনিয়ার ক্রমে সাজায়।

72. In a graph, the number of edges incident to a vertex is called its: / একটি গ্রাফে, একটি ভার্টেক্সে আপতিত এজের সংখ্যাকে তার কী বলা হয়?

A) Degree / ডিগ্রি

B) Path / পাথ

C) Weight / ওয়েট

D) Rank / র‍্যাঙ্ক

Correct Answer / সঠিক উত্তর: A) Degree / ডিগ্রি

Explanation / ব্যাখ্যা: The degree of a vertex is the number of edges connected to it. In a directed graph, we distinguish between in-degree (incoming edges) and out-degree (outgoing edges).
একটি ভার্টেক্সের ডিগ্রি হলো এর সাথে সংযুক্ত এজের সংখ্যা। একটি ডাইরেক্টেড গ্রাফে, আমরা ইন-ডিগ্রি (আগত এজ) এবং আউট-ডিগ্রি (বহির্গামী এজ) এর মধ্যে পার্থক্য করি।

73. The selection sort algorithm sorts an array by: / সিলেকশন সর্ট অ্যালগরিদম একটি অ্যারে সর্ট করে:

A) Repeatedly swapping adjacent elements / বারবার সংলগ্ন উপাদান অদলবদল করে

B) Building the final sorted array one item at a time / একবারে একটি আইটেম নিয়ে চূড়ান্ত সাজানো অ্যারে তৈরি করে

C) Dividing the array and merging sorted halves / অ্যারেটিকে ভাগ করে এবং সাজানো অর্ধেকগুলিকে মার্জ করে

D) Repeatedly finding the minimum element and moving it to the sorted part / বারবার সর্বনিম্ন উপাদান খুঁজে বের করে এবং এটিকে সাজানো অংশে স্থানান্তরিত করে

Correct Answer / সঠিক উত্তর: D) Repeatedly finding the minimum element and moving it to the sorted part / বারবার সর্বনিম্ন উপাদান খুঁজে বের করে এবং এটিকে সাজানো অংশে স্থানান্তরিত করে

Explanation / ব্যাখ্যা: This is the core logic of Selection Sort. In each iteration, it selects the smallest remaining element and swaps it into its correct sorted position.
এটি সিলেকশন সর্টের মূল যুক্তি। প্রতিটি পুনরাবৃত্তিতে, এটি অবশিষ্ট সর্বনিম্ন উপাদানটি নির্বাচন করে এবং এটিকে তার সঠিক সাজানো অবস্থানে অদলবদল করে।

74. A full binary tree with L leaves will have how many total nodes? / L সংখ্যক লিফ সহ একটি পূর্ণ বাইনারি ট্রি-তে মোট কয়টি নোড থাকবে?

A) L + 1

B) 2L

C) 2L – 1

D) L – 1

Correct Answer / সঠিক উত্তর: C) 2L – 1

Explanation / ব্যাখ্যা: In a full binary tree (where every node has 0 or 2 children), the number of internal nodes is L-1. The total number of nodes is the sum of internal nodes and leaf nodes, which is (L-1) + L = 2L – 1.
একটি পূর্ণ বাইনারি ট্রি-তে (যেখানে প্রতিটি নোডের ০ বা ২টি চাইল্ড থাকে), ইন্টারনাল নোডের সংখ্যা L-1। মোট নোডের সংখ্যা হলো ইন্টারনাল নোড এবং লিফ নোডের যোগফল, যা (L-1) + L = 2L – 1।

75. The term ‘ADT’ stands for: / ‘ADT’ শব্দটি এর পূর্ণরূপ হলো:

A) Abstract Data Type / অ্যাবস্ট্রাক্ট ডেটা টাইপ

B) Advanced Data Technique / অ্যাডভান্সড ডেটা টেকনিক

C) Array Data Type / অ্যারে ডেটা টাইপ

D) Algorithmic Design Tool / অ্যালগরিদমিক ডিজাইন টুল

Correct Answer / সঠিক উত্তর: A) Abstract Data Type / অ্যাবস্ট্রাক্ট ডেটা টাইপ

Explanation / ব্যাখ্যা: An Abstract Data Type (ADT) is a mathematical model for data types where a data type is defined by its behavior (semantics) from the point of view of a user, specifically in terms of possible values, possible operations on data of this type, and the behavior of these operations. It hides the implementation details.
একটি অ্যাবস্ট্রাক্ট ডেটা টাইপ (ADT) হলো ডেটা টাইপের জন্য একটি গাণিতিক মডেল যেখানে একটি ডেটা টাইপ তার ব্যবহারকারীর দৃষ্টিকোণ থেকে তার আচরণ (অর্থ) দ্বারা সংজ্ঞায়িত করা হয়, বিশেষত সম্ভাব্য মান, এই ধরনের ডেটার উপর সম্ভাব্য অপারেশন এবং এই অপারেশনগুলির আচরণের পরিপ্রেক্ষিতে। এটি বাস্তবায়নের বিবরণ লুকিয়ে রাখে।

76. Which of the following is an “in-place” sorting algorithm? / নিচের কোনটি একটি “ইন-প্লেস” সর্টিং অ্যালগরিদম?

A) Merge Sort / মার্জ সর্ট

B) Counting Sort / কাউন্টিং সর্ট

C) Radix Sort / রেডিক্স সর্ট

D) Heap Sort / হিপ সর্ট

Correct Answer / সঠিক উত্তর: D) Heap Sort / হিপ সর্ট

Explanation / ব্যাখ্যা: An in-place algorithm is one that transforms input using no auxiliary data structure, requiring only a small, constant amount of extra storage space. Heap Sort is an in-place algorithm. Merge Sort requires O(n) extra space.
একটি ইন-প্লেস অ্যালগরিদম হলো এমন একটি যা কোনো সহায়ক ডেটা স্ট্রাকচার ব্যবহার না করে ইনপুটকে রূপান্তরিত করে, যার জন্য কেবল একটি ছোট, ধ্রুবক পরিমাণ অতিরিক্ত স্টোরেজ স্পেস প্রয়োজন। হিপ সর্ট একটি ইন-প্লেস অ্যালগরিদম। মার্জ সর্টের জন্য O(n) অতিরিক্ত স্থান প্রয়োজন।

77. The maximum number of nodes at level ‘k’ of a binary tree is: / একটি বাইনারি ট্রির ‘k’ লেভেলে সর্বোচ্চ নোডের সংখ্যা হলো:

A) 2^k – 1

B) k

C) 2^(k-1)

D) 2^k

Correct Answer / সঠিক উত্তর: C) 2^(k-1)

Explanation / ব্যাখ্যা: Assuming the root is at level 1, level ‘k’ can have at most 2^(k-1) nodes. Level 1 has 2^0=1, Level 2 has 2^1=2, Level 3 has 2^2=4, and so on.
ধরে নেওয়া যাক রুট লেভেল ১-এ আছে, তাহলে লেভেল ‘k’-তে সর্বোচ্চ 2^(k-1) টি নোড থাকতে পারে। লেভেল ১-এ 2^0=1, লেভেল ২-এ 2^1=2, লেভেল ৩-এ 2^2=4, এবং এভাবেই চলতে থাকে।

78. What does a “primitive” data type refer to? / “প্রিমিটিভ” ডেটা টাইপ বলতে কী বোঝায়?

A) Data types created by the user / ব্যবহারকারী দ্বারা তৈরি ডেটা টাইপ

B) Data types that are built into a programming language / প্রোগ্রামিং ভাষায় অন্তর্নির্মিত ডেটা টাইপ

C) Complex data structures like trees / ট্রির মতো জটিল ডেটা স্ট্রাকচার

D) Data types that can only store numbers / ডেটা টাইপ যা কেবল সংখ্যা সংরক্ষণ করতে পারে

Correct Answer / সঠিক উত্তর: B) Data types that are built into a programming language / প্রোগ্রামিং ভাষায় অন্তর্নির্মিত ডেটা টাইপ

Explanation / ব্যাখ্যা: Primitive data types are the most basic data types provided by a programming language. Examples include integer (int), character (char), floating-point (float), and boolean. Non-primitive (or user-defined) data structures like arrays and structs are built using these primitives.
প্রিমিটিভ ডেটা টাইপ হলো একটি প্রোগ্রামিং ভাষা দ্বারা প্রদত্ত সবচেয়ে মৌলিক ডেটা টাইপ। উদাহরণস্বরূপ ইন্টিজার (int), ক্যারেক্টার (char), ফ্লোটিং-পয়েন্ট (float), এবং বুলিয়ান। নন-প্রিমিটিভ (বা ব্যবহারকারী-সংজ্ঞায়িত) ডেটা স্ট্রাকচার যেমন অ্যারে এবং স্ট্রাকট এই প্রিমিটিভগুলি ব্যবহার করে তৈরি করা হয়।

79. A linked list is considered a ________ data structure. / একটি লিঙ্কড লিস্টকে একটি ________ ডেটা স্ট্রাকচার হিসাবে বিবেচনা করা হয়।

A) Dynamic / ডাইনামিক

B) Static / স্ট্যাটিক

C) Fixed / ফিক্সড

D) Compile-time / কম্পাইল-টাইম

Correct Answer / সঠিক উত্তর: A) Dynamic / ডাইনামিক

Explanation / ব্যাখ্যা: Linked lists are dynamic data structures because their size can be changed at runtime by allocating or deallocating memory for nodes. Arrays, in contrast, are typically static.
লিঙ্কড লিস্টগুলি ডাইনামিক ডেটা স্ট্রাকচার কারণ তাদের আকার রানটাইমে নোডগুলির জন্য মেমরি বরাদ্দ বা মুক্ত করে পরিবর্তন করা যেতে পারে। এর বিপরীতে, অ্যারে সাধারণত স্ট্যাটিক হয়।

80. In a queue, insertion is done at the: / একটি কিউ-তে, সন্নিবেশ করা হয়:

A) Front / সামনে

B) Rear / পিছনে

C) Middle / মাঝখানে

D) Any position / যেকোনো অবস্থানে

Correct Answer / সঠিক উত্তর: B) Rear / পিছনে

Explanation / ব্যাখ্যা: In a standard queue, new elements are added (enqueued) at the rear end, and existing elements are removed (dequeued) from the front end.
একটি স্ট্যান্ডার্ড কিউ-তে, নতুন উপাদানগুলি পিছনের প্রান্তে যোগ করা হয় (এনকিউ) এবং বিদ্যমান উপাদানগুলি সামনের প্রান্ত থেকে সরানো হয় (ডিকিউ)।

81. The time factor when determining the efficiency of an algorithm is measured by: / একটি অ্যালগরিদমের কার্যকারিতা নির্ধারণ করার সময় টাইম ফ্যাক্টরটি কী দ্বারা পরিমাপ করা হয়?

A) Counting microseconds / মাইক্রোসেকেন্ড গণনা করে

B) Counting the number of key operations / মূল অপারেশনের সংখ্যা গণনা করে

C) Counting the number of statements / স্টেটমেন্টের সংখ্যা গণনা করে

D) Counting kilobytes of algorithm / অ্যালগরিদমের কিলোবাইট গণনা করে

Correct Answer / সঠিক উত্তর: B) Counting the number of key operations / মূল অপারেশনের সংখ্যা গণনা করে

Explanation / ব্যাখ্যা: Algorithm efficiency (time complexity) is analyzed in a machine-independent way by counting the number of basic or “key” operations (like comparisons or swaps) as a function of the input size, rather than measuring actual clock time.
অ্যালগরিদমের কার্যকারিতা (টাইম কমপ্লেক্সিটি) মেশিন-নিরপেক্ষভাবে বিশ্লেষণ করা হয় ইনপুট আকারের ফাংশন হিসাবে মৌলিক বা “কী” অপারেশনের (যেমন তুলনা বা অদলবদল) সংখ্যা গণনা করে, প্রকৃত ঘড়ির সময় পরিমাপ করে নয়।

82. Which of the following is an example of a composite data type? / নিচের কোনটি একটি কম্পোজিট ডেটা টাইপের উদাহরণ?

A) Integer / ইন্টিজার

B) Character / ক্যারেক্টার

C) Array / অ্যারে

D) Boolean / বুলিয়ান

Correct Answer / সঠিক উত্তর: C) Array / অ্যারে

Explanation / ব্যাখ্যা: A composite (or compound) data type is one that is composed of primitive data types. Arrays, structs, and classes are examples of composite types, as they group multiple values together.
একটি কম্পোজিট (বা যৌগিক) ডেটা টাইপ হলো এমন একটি যা প্রিমিটিভ ডেটা টাইপ দিয়ে গঠিত। অ্যারে, স্ট্রাকট এবং ক্লাস হলো কম্পোজিট টাইপের উদাহরণ, কারণ তারা একাধিক মানকে একসাথে গ্রুপ করে।

83. A graph is said to be complete if: / একটি গ্রাফকে কমপ্লিট বলা হয় যদি:

A) It has a cycle / এতে একটি সাইকেল থাকে

B) Every vertex is connected to every other vertex / প্রতিটি ভার্টেক্স অন্য প্রতিটি ভার্টেক্সের সাথে সংযুক্ত থাকে

C) It is also a tree / এটি একটি ট্রিও হয়

D) It has no edges / এতে কোনো এজ না থাকে

Correct Answer / সঠিক উত্তর: B) Every vertex is connected to every other vertex / প্রতিটি ভার্টেক্স অন্য প্রতিটি ভার্টেক্সের সাথে সংযুক্ত থাকে

Explanation / ব্যাখ্যা: A complete graph is an undirected graph in which every pair of distinct vertices is connected by a unique edge.
একটি কমপ্লিট গ্রাফ হলো একটি আনডাইরেক্টেড গ্রাফ যেখানে প্রতিটি জোড়া স্বতন্ত্র ভার্টেক্স একটি অনন্য এজ দ্বারা সংযুক্ত থাকে।

84. The pointers in a stack, if implemented by an array, will be: / একটি স্ট্যাকে পয়েন্টারগুলি, যদি একটি অ্যারে দ্বারা বাস্তবায়িত হয়, তাহলে হবে:

A) Pointers to memory locations / মেমরি অবস্থানের পয়েন্টার

B) Head and Tail pointers / হেড এবং টেইল পয়েন্টার

C) An integer index called ‘top’ / ‘টপ’ নামক একটি পূর্ণসংখ্যা ইনডেক্স

D) Front and Rear pointers / ফ্রন্ট এবং রিয়ার পয়েন্টার

Correct Answer / সঠিক উত্তর: C) An integer index called ‘top’ / ‘টপ’ নামক একটি পূর্ণসংখ্যা ইনডেক্স

Explanation / ব্যাখ্যা: When a stack is implemented using an array, a single integer variable, typically named ‘top’, is used to keep track of the index of the last element inserted. It functions as the stack pointer.
যখন একটি স্ট্যাক অ্যারে ব্যবহার করে বাস্তবায়িত হয়, তখন একটি একক পূর্ণসংখ্যা ভেরিয়েবল, সাধারণত ‘টপ’ নামে পরিচিত, সর্বশেষ সন্নিবেশিত উপাদানের ইনডেক্স ট্র্যাক করতে ব্যবহৃত হয়। এটি স্ট্যাক পয়েন্টার হিসাবে কাজ করে।

85. If a binary tree is skewed, what is the worst-case time to search for an element? / যদি একটি বাইনারি ট্রি স্কিউড (skewed) হয়, তাহলে একটি উপাদান খোঁজার জন্য সবচেয়ে খারাপ সময় কত?

A) O(log n)

B) O(1)

C) O(n)

D) O(n^2)

Correct Answer / সঠিক উত্তর: C) O(n)

Explanation / ব্যাখ্যা: A skewed binary tree is one where each node has only one child (or none). It degenerates into a linked list. Searching in such a tree is equivalent to a linear search, with a worst-case time complexity of O(n).
একটি স্কিউড বাইনারি ট্রি হলো এমন একটি যেখানে প্রতিটি নোডের কেবল একটি চাইল্ড থাকে (বা কোনোটিই নয়)। এটি একটি লিঙ্কড লিস্টে পরিণত হয়। এমন একটি ট্রি-তে অনুসন্ধান একটি লিনিয়ার সার্চের সমতুল্য, যার সবচেয়ে খারাপ টাইম কমপ্লেক্সিটি O(n)।

86. What is the primary use of a hash table (a common implementation of dictionary/map)? / একটি হ্যাশ টেবিলের (ডিকশনারি/ম্যাপের একটি সাধারণ বাস্তবায়ন) প্রাথমিক ব্যবহার কী?

A) Sorting data / ডেটা সর্ট করা

B) Fast key-based data lookup / কী-ভিত্তিক দ্রুত ডেটা সন্ধান করা

C) Storing hierarchical data / হায়ারার্কিকাল ডেটা সংরক্ষণ করা

D) Implementing FIFO logic / FIFO যুক্তি বাস্তবায়ন করা

Correct Answer / সঠিক উত্তর: B) Fast key-based data lookup / কী-ভিত্তিক দ্রুত ডেটা সন্ধান করা

Explanation / ব্যাখ্যা: A hash table excels at storing key-value pairs and providing very fast (average case O(1)) retrieval, insertion, and deletion of values based on their keys.
একটি হ্যাশ টেবিল কী-ভ্যালু জোড়া সংরক্ষণ করতে এবং তাদের কী-এর উপর ভিত্তি করে খুব দ্রুত (গড় ক্ষেত্রে O(1)) ভ্যালু পুনরুদ্ধার, সন্নিবেশ এবং অপসারণে পারদর্শী।

87. A linear collection of data elements where the linear node is given by means of a pointer is called: / ডেটা উপাদানগুলির একটি রৈখিক সংগ্রহ যেখানে রৈখিক নোড একটি পয়েন্টারের মাধ্যমে দেওয়া হয় তাকে কী বলা হয়?

A) Array / অ্যারে

B) Linked list / লিঙ্কড লিস্ট

C) Queue / কিউ

D) Stack / স্ট্যাক

Correct Answer / সঠিক উত্তর: B) Linked list / লিঙ্কড লিস্ট

Explanation / ব্যাখ্যা: This is the definition of a linked list. Unlike an array where linearity is defined by physical memory adjacency, in a linked list, the linear order is maintained by pointers connecting one node to the next.
এটি একটি লিঙ্কড লিস্টের সংজ্ঞা। অ্যারের মতো নয় যেখানে রৈখিকতা ভৌত মেমরি সংলগ্নতা দ্বারা সংজ্ঞায়িত করা হয়, একটি লিঙ্কড লিস্টে, রৈখিক ক্রম একটি নোডকে পরেরটির সাথে সংযোগকারী পয়েন্টার দ্বারা বজায় রাখা হয়।

88. A tree where the value of a parent node is always greater than or equal to its children is a: / একটি ট্রি যেখানে একটি প্যারেন্ট নোডের মান সর্বদা তার চাইল্ডদের চেয়ে বড় বা সমান হয়, তা হলো একটি:

A) Binary Search Tree / বাইনারি সার্চ ট্রি

B) Max-Heap / ম্যাক্স-হিপ

C) Min-Heap / মিন-হিপ

D) AVL Tree / AVL ট্রি

Correct Answer / সঠিক উত্তর: B) Max-Heap / ম্যাক্স-হিপ

Explanation / ব্যাখ্যা: This is the definition of the max-heap property. In a max-heap, the value of any node is greater than or equal to the values of its children. This ensures the root node contains the maximum value in the heap.
এটি ম্যাক্স-হিপ বৈশিষ্ট্যের সংজ্ঞা। একটি ম্যাক্স-হিপে, যেকোনো নোডের মান তার চাইল্ডদের মানের চেয়ে বড় বা সমান। এটি নিশ্চিত করে যে রুট নোডে হিপের সর্বোচ্চ মান রয়েছে।

89. Which of the following is an application of a queue? / নিচের কোনটি একটি কিউ-এর অ্যাপ্লিকেশন?

A) Balancing of symbols / চিহ্নের ভারসাম্য রক্ষা

B) Reversing a string / একটি স্ট্রিং উল্টানো

C) Serving requests on a single shared resource (like a printer) / একটি একক শেয়ার্ড রিসোর্সে (যেমন প্রিন্টার) অনুরোধ পরিবেশন করা

D) Expression evaluation / এক্সপ্রেশন মূল্যায়ন

Correct Answer / সঠিক উত্তর: C) Serving requests on a single shared resource (like a printer) / একটি একক শেয়ার্ড রিসোর্সে (যেমন প্রিন্টার) অনুরোধ পরিবেশন করা

Explanation / ব্যাখ্যা: Queues are used for managing tasks or requests in a first-come, first-served manner. A printer queue, CPU scheduling, and call center phone systems are common examples. The other options are typical applications of a stack.
কিউগুলি প্রথম-আসা, প্রথম-যাওয়া পদ্ধতিতে কাজ বা অনুরোধ পরিচালনা করতে ব্যবহৃত হয়। একটি প্রিন্টার কিউ, সিপিইউ সময়সূচী এবং কল সেন্টার ফোন সিস্টেম সাধারণ উদাহরণ। অন্যান্য বিকল্পগুলি একটি স্ট্যাকের সাধারণ অ্যাপ্লিকেশন।

90. Inserting an item into a stack which is already full is called: / একটি স্ট্যাকে একটি আইটেম সন্নিবেশ করা যা ইতিমধ্যে পূর্ণ, তাকে কী বলা হয়?

A) Underflow / আন্ডারফ্লো

B) Overflow / ওভারফ্লো

C) Push error / পুশ এরর

D) Full stack exception / ফুল স্ট্যাক এক্সেপশন

Correct Answer / সঠিক উত্তর: B) Overflow / ওভারফ্লো

Explanation / ব্যাখ্যা: The term for attempting to add an element to a full data structure (like a stack or queue) is ‘Overflow’.
একটি পূর্ণ ডেটা স্ট্রাকচারে (যেমন একটি স্ট্যাক বা কিউ) একটি উপাদান যোগ করার প্রচেষ্টার জন্য ব্যবহৃত শব্দটি হলো ‘ওভারফ্লো’।

91. The data structure required to evaluate a postfix expression is: / একটি পোস্টফিক্স এক্সপ্রেশন মূল্যায়ন করার জন্য প্রয়োজনীয় ডেটা স্ট্রাকচারটি হলো:

A) Queue / কিউ

B) Stack / স্ট্যাক

C) Linked List / লিঙ্কড লিস্ট

D) Tree / ট্রি

Correct Answer / সঠিক উত্তর: B) Stack / স্ট্যাক

Explanation / ব্যাখ্যা: A stack is used to evaluate postfix expressions. When an operand is encountered, it is pushed onto the stack. When an operator is encountered, the top two operands are popped, the operation is performed, and the result is pushed back.
একটি স্ট্যাক পোস্টফিক্স এক্সপ্রেশন মূল্যায়ন করতে ব্যবহৃত হয়। যখন একটি অপারেন্ড পাওয়া যায়, তখন এটি স্ট্যাকে পুশ করা হয়। যখন একটি অপারেটর পাওয়া যায়, তখন শীর্ষ দুটি অপারেন্ড পপ করা হয়, অপারেশনটি করা হয় এবং ফলাফলটি আবার পুশ করা হয়।

92. In which data structure are new elements added to the end and removed from the beginning? / কোন ডেটা স্ট্রাকচারে নতুন উপাদান শেষে যোগ করা হয় এবং শুরু থেকে সরানো হয়?

A) Stack / স্ট্যাক

B) Queue / কিউ

C) Both Stack and Queue / স্ট্যাক এবং কিউ উভয়ই

D) Neither Stack nor Queue / স্ট্যাক বা কিউ কোনোটিই নয়

Correct Answer / সঠিক উত্তর: B) Queue / কিউ

Explanation / ব্যাখ্যা: This describes the First-In, First-Out (FIFO) behavior of a queue.
এটি একটি কিউ-এর ফার্স্ট-ইন, ফার্স্ট-আউট (FIFO) আচরণ বর্ণনা করে।

93. What is the time complexity to find an element in a balanced Binary Search Tree? / একটি ভারসাম্যপূর্ণ বাইনারি সার্চ ট্রি-তে একটি উপাদান খুঁজে বের করার টাইম কমপ্লেক্সিটি কত?

A) O(n)

B) O(1)

C) O(n log n)

D) O(log n)

Correct Answer / সঠিক উত্তর: D) O(log n)

Explanation / ব্যাখ্যা: In a balanced BST, the height of the tree is logarithmic with respect to the number of nodes (n). Since a search operation traverses from the root to a leaf, the time complexity is proportional to the height, which is O(log n).
একটি ভারসাম্যপূর্ণ BST-তে, ট্রির উচ্চতা নোডের সংখ্যা (n) এর সাপেক্ষে লগারিদমিক হয়। যেহেতু একটি অনুসন্ধান অপারেশন রুট থেকে একটি লিফ পর্যন্ত যায়, টাইম কমপ্লেক্সিটি উচ্চতার সমানুপাতিক, যা O(log n)।

94. The operation of processing each element in a list is known as: / একটি তালিকার প্রতিটি উপাদান প্রক্রিয়া করার অপারেশনটি কী নামে পরিচিত?

A) Sorting / সর্টিং

B) Merging / মার্জিং

C) Inserting / ইনসার্টিং

D) Traversal / ট্র্যাভার্সাল

Correct Answer / সঠিক উত্তর: D) Traversal / ট্র্যাভার্সাল

Explanation / ব্যাখ্যা: Traversal is the process of visiting each element of a data structure (like an array, linked list, or tree) exactly once.
ট্র্যাভার্সাল হলো একটি ডেটা স্ট্রাকচারের (যেমন একটি অ্যারে, লিঙ্কড লিস্ট বা ট্রি) প্রতিটি উপাদান ঠিক একবার পরিদর্শন করার প্রক্রিয়া।

95. A sparse matrix is one where: / একটি স্পার্স ম্যাট্রিক্স হলো এমন একটি যেখানে:

A) Most elements are non-zero / বেশিরভাগ উপাদানই অ-শূন্য

B) Most elements are zero / বেশিরভাগ উপাদানই শূন্য

C) All elements are zero / সমস্ত উপাদানই শূন্য

D) It has more columns than rows / এতে সারির চেয়ে বেশি কলাম থাকে

Correct Answer / সঠিক উত্তর: B) Most elements are zero / বেশিরভাগ উপাদানই শূন্য

Explanation / ব্যাখ্যা: A sparse matrix is a matrix in which the number of zero elements is much higher than the number of non-zero elements. Special data structures are used to store them efficiently.
একটি স্পার্স ম্যাট্রিক্স হলো এমন একটি ম্যাট্রিক্স যেখানে শূন্য উপাদানের সংখ্যা অ-শূন্য উপাদানের সংখ্যার চেয়ে অনেক বেশি। এগুলিকে কার্যকরভাবে সংরক্ষণ করার জন্য বিশেষ ডেটা স্ট্রাকচার ব্যবহার করা হয়।

96. Which is a characteristic of an algorithm? / নিচের কোনটি একটি অ্যালগরিদমের বৈশিষ্ট্য?

A) It must be ambiguous / এটি অবশ্যই অস্পষ্ট হতে হবে

B) It must have a finite number of steps / এতে অবশ্যই সসীম সংখ্যক ধাপ থাকতে হবে

C) It must run forever / এটি অবশ্যই চিরকাল চলতে হবে

D) It can have more than one meaning / এর একাধিক অর্থ থাকতে পারে

Correct Answer / সঠিক উত্তর: B) It must have a finite number of steps / এতে অবশ্যই সসীম সংখ্যক ধাপ থাকতে হবে

Explanation / ব্যাখ্যা: Key characteristics of a valid algorithm are: Finiteness (it must terminate), Definiteness (each step must be precisely defined), Input, Output, and Effectiveness.
একটি বৈধ অ্যালগরিদমের মূল বৈশিষ্ট্যগুলি হলো: সসীমতা (এটি অবশ্যই শেষ হতে হবে), নির্দিষ্টতা (প্রতিটি ধাপ অবশ্যই সুনির্দিষ্টভাবে সংজ্ঞায়িত হতে হবে), ইনপুট, আউটপুট এবং কার্যকারিতা।

97. A data type is defined by: / একটি ডেটা টাইপ কী দ্বারা সংজ্ঞায়িত হয়?

A) A set of values only / কেবল একগুচ্ছ মান দ্বারা

B) A set of operations only / কেবল একগুচ্ছ অপারেশন দ্বারা

C) A set of values and a set of operations / একগুচ্ছ মান এবং একগুচ্ছ অপারেশন দ্বারা

D) The amount of memory it uses / এটি যে পরিমাণ মেমরি ব্যবহার করে তা দ্বারা

Correct Answer / সঠিক উত্তর: C) A set of values and a set of operations / একগুচ্ছ মান এবং একগুচ্ছ অপারেশন দ্বারা

Explanation / ব্যাখ্যা: A data type is characterized by two things: the domain of values it can hold, and the set of operations that can be performed on those values.
একটি ডেটা টাইপ দুটি জিনিস দ্বারা চিহ্নিত করা হয়: এটি যে মানগুলি ধারণ করতে পারে তার ডোমেন, এবং সেই মানগুলির উপর যে অপারেশনগুলি করা যেতে পারে তার সেট।

98. Which concept allows data to be stored efficiently by connecting different data structures? / কোন ধারণাটি বিভিন্ন ডেটা স্ট্রাকচারকে সংযুক্ত করে ডেটা কার্যকরভাবে সংরক্ষণ করার অনুমতি দেয়?

A) Pointers / পয়েন্টার

B) Arrays / অ্যারে

C) Loops / লুপ

D) Functions / ফাংশন

Correct Answer / সঠিক উত্তর: A) Pointers / পয়েন্টার

Explanation / ব্যাখ্যা: Pointers, which store memory addresses, are the fundamental mechanism for linking data. They are the basis for dynamic data structures like linked lists, trees, and graphs, allowing for flexible and efficient data organization.
পয়েন্টার, যা মেমরি ঠিকানা সংরক্ষণ করে, ডেটা লিঙ্ক করার জন্য মৌলিক প্রক্রিয়া। এগুলি লিঙ্কড লিস্ট, ট্রি এবং গ্রাফের মতো ডাইনামিক ডেটা স্ট্রাকচারের ভিত্তি, যা নমনীয় এবং কার্যকর ডেটা সংগঠনের অনুমতি দেয়।

99. A node that is a descendant of another node is called its: / একটি নোড যা অন্য একটি নোডের বংশধর, তাকে তার কী বলা হয়?

A) Parent / প্যারেন্ট

B) Ancestor / অ্যানসেস্টর

C) Child / চাইল্ড

D) Sibling / সিবলিং

Correct Answer / সঠিক উত্তর: C) Child / চাইল্ড

Explanation / ব্যাখ্যা: A child of a node is any node that is directly connected to it on a level below. The term “descendant” is more general (child, grandchild, etc.), but ‘child’ is the most specific correct answer among the choices.
একটি নোডের চাইল্ড হলো এমন কোনো নোড যা সরাসরি তার নীচের লেভেলে তার সাথে সংযুক্ত। “ডিসেন্ডেন্ট” শব্দটি আরও সাধারণ (চাইল্ড, গ্র্যান্ডচাইল্ড ইত্যাদি), কিন্তু বিকল্পগুলির মধ্যে ‘চাইল্ড’ হলো সবচেয়ে নির্দিষ্ট সঠিক উত্তর।

100. The efficiency of an algorithm is independent of: / একটি অ্যালগরিদমের কার্যকারিতা কিসের উপর নির্ভরশীল নয়?

A) The number of inputs / ইনপুটের সংখ্যা

B) The rate of growth of steps with input / ইনপুটের সাথে ধাপের বৃদ্ধির হার

C) The specific computer or programming language used / ব্যবহৃত নির্দিষ্ট কম্পিউটার বা প্রোগ্রামিং ভাষা

D) The underlying data structure / অন্তর্নিহিত ডেটা স্ট্রাকচার

Correct Answer / সঠিক উত্তর: C) The specific computer or programming language used / ব্যবহৃত নির্দিষ্ট কম্পিউটার বা প্রোগ্রামিং ভাষা

Explanation / ব্যাখ্যা: Algorithmic complexity analysis (like Big O) is designed to be abstract and platform-independent. It focuses on the growth rate of operations relative to input size, not the actual speed on a particular machine or the syntax of a specific language.
অ্যালগরিদমিক কমপ্লেক্সিটি বিশ্লেষণ (যেমন বিগ O) বিমূর্ত এবং প্ল্যাটফর্ম-নিরপেক্ষ হওয়ার জন্য ডিজাইন করা হয়েছে। এটি ইনপুট আকারের সাপেক্ষে অপারেশনের বৃদ্ধির হারের উপর ফোকাস করে, কোনো নির্দিষ্ট মেশিনের প্রকৃত গতি বা একটি নির্দিষ্ট ভাষার সিনট্যাক্সের উপর নয়।

Leave a Comment

Scroll to Top