In Huffman coding, the algorithm repeatedly picks two nodes and merges those. These two nodes are:
A
with the highest frequency
B
with the lowest frequency
C
one highest and one lowest frequency
D
picked arbitrarily
উত্তরের বিবরণ
Huffman Coding হলো একটি lossless data compression algorithm, যা ডেটা সংকোচনের জন্য প্রতিটি প্রতীকের (symbol) ঘনত্ব বা ফ্রিকোয়েন্সি অনুযায়ী অপটিমাল প্রিফিক্স কোড তৈরি করে। এর মূল লক্ষ্য হলো গড় কোডের দৈর্ঘ্য কমানো, যাতে স্টোরেজ ও ট্রান্সমিশনে কম জায়গা লাগে।
বিস্তারিতভাবে কাজের ধাপগুলো:
-
প্রতিটি চরিত্র বা প্রতীক ও তার ফ্রিকোয়েন্সি তালিকাভুক্ত করা হয়।
-
সবচেয়ে কম ফ্রিকোয়েন্সিযুক্ত দুটি নোড নির্বাচন করা হয়।
-
এই দুটি নোড মার্জ করে একটি নতুন নোড তৈরি করা হয়, যার ফ্রিকোয়েন্সি = দুটির যোগফল।
-
উপরের ধাপগুলো পুনরাবৃত্তি করা হয় যতক্ষণ না একটি রুট নোড (Huffman tree) গঠিত হয়।
কেন সবচেয়ে কম ফ্রিকোয়েন্সি বেছে নেওয়া হয়:
-
কারণ এতে কম ঘনঘন আসা প্রতীকগুলোকে দীর্ঘ কোড এবং বেশি ঘনঘন আসা প্রতীকগুলোকে ছোট কোড দেওয়া হয়।
-
এইভাবে Huffman coding গড় কোড দৈর্ঘ্য কমিয়ে সর্বোচ্চ কার্যকারিতা নিশ্চিত করে, যা এর মূল নীতি।

0
Updated: 2 days ago
_____ uses disk space as an extension of RAM.
Created: 2 days ago
A
Caching
B
Virtual memory
C
Spooling
D
Buffer
Virtual memory হলো এমন একটি মেমোরি ম্যানেজমেন্ট টেকনিক যেখানে হার্ড ডিস্কের (secondary storage) একটি অংশকে RAM-এর সম্প্রসারণ (extension) হিসেবে ব্যবহার করা হয়। যখন physical RAM পূর্ণ হয়ে যায়, তখন অপারেটিং সিস্টেম অস্থায়ীভাবে অব্যবহৃত ডেটা-কে swap space বা page file নামে পরিচিত ডিস্কের জায়গায় সরিয়ে রাখে। এর ফলে সীমিত RAM দিয়েও বড় প্রোগ্রাম বা একাধিক প্রোগ্রাম একসাথে চালানো সম্ভব হয়।
অন্য বিকল্পগুলোর ব্যাখ্যা:
-
Caching: বারবার ব্যবহৃত ডেটাকে দ্রুত অ্যাক্সেসের জন্য দ্রুততর মেমোরিতে সংরক্ষণ করে; এটি ডিস্ককে RAM হিসেবে ব্যবহার করে না।
-
Spooling: এর পূর্ণরূপ Simultaneous Peripheral Operations On-Line, যা printer-এর মতো I/O ডিভাইস পরিচালনায় ব্যবহৃত হয়।
-
Buffer: ডেটা এক স্থান থেকে অন্য স্থানে স্থানান্তরের সময় অস্থায়ীভাবে ডেটা ধারণের স্থান হিসেবে কাজ করে (যেমন RAM থেকে ডিভাইসে ডেটা পাঠানোর সময়)।

0
Updated: 2 days ago
In Agile, Software is delivered:
Created: 2 days ago
A
at the end of the project
B
in small incremental iterations
C
after complete documentation
D
only when all features have been implemented
Agile methodology এমন একটি সফটওয়্যার উন্নয়ন পদ্ধতি যেখানে ছোট ছোট ধাপে (iterations বা sprints) ক্রমান্বয়ে কাজ সম্পন্ন করা হয়। প্রতিটি iteration-এ কার্যকর সফটওয়্যারের একটি অংশ সরবরাহ করা হয়, যা তাৎক্ষণিকভাবে পরীক্ষা বা ব্যবহার করা যায়। এর ফলে প্রকল্পটি ধাপে ধাপে উন্নত হয় এবং পরিবর্তনের সুযোগও সহজে রাখা যায়।
বিস্তারিতভাবে:
-
Iterative and Incremental Development: কাজকে ছোট ছোট সাইকেল (iteration) আকারে ভাগ করা হয়, প্রতিটি সাধারণত ১–৪ সপ্তাহ দীর্ঘ হয়।
-
প্রতিটি iteration-এর শেষে একটি কার্যকর সফটওয়্যার অংশ (working software) সরবরাহ করা হয়।
-
Continuous Delivery এবং Feedback: স্টেকহোল্ডাররা নিয়মিত অগ্রগতি পর্যালোচনা করে তাৎক্ষণিক মতামত প্রদান করতে পারে, যা দ্রুত পরিবর্তন আনতে সাহায্য করে।
-
Agile এর মূল লক্ষ্য হচ্ছে নিয়মিত কার্যকর পণ্য প্রদান ও ক্রমাগত উন্নয়ন নিশ্চিত করা।
ভুল বিকল্পগুলো:
-
(ক) প্রকল্পের শেষে ডেলিভারি → এটি Waterfall Model, Agile নয়।
-
(গ) সম্পূর্ণ ডকুমেন্টেশনের পর → Agile-এ গুরুত্ব দেওয়া হয় working software-এ, ডকুমেন্টেশনে নয়।
-
(ঘ) সব ফিচার সম্পন্ন হলে → Agile আংশিক ফিচার সহ usable increment সরবরাহ করে, সম্পূর্ণ না হলেও।

0
Updated: 2 days ago
What does the 'continue' statement do inside a loop?
Created: 2 days ago
A
exits the loop entirely
B
terminates the program
C
re-execute the loop twice
D
skip the rest of the current iteration and move to the next
Answer: ঘ)
Skip the rest of the current iteration and move to the next
Explanation:
The continue statement in programming (C, C++, Java, Python, etc.) is used
inside loops:
When the program encounters continue, it
immediately skips the remaining statements in the current iteration.
Then, the loop proceeds with the next iteration (checking the loop
condition for while/for loops).
Example in C:
for(int i = 1; i <= 5; i++) {
if(i == 3) {
continue; // skip printing 3
}
printf("%d ", i);
}
Output:
1 2 4 5
Notice that 3 is skipped, but the loop continues.
Incorrect options:
(ক) Exits the loop
→ that’s break
(খ) Terminates the
program → that’s exit()
(গ) Re-execute loop
twice → not related

0
Updated: 2 days ago