Which case a suffix tree is useful for?
A
Fast string search
B
Minimum cut
C
Sorting numbers
D
Graph coloring
উত্তরের বিবরণ
Suffix tree সবচেয়ে বেশি ব্যবহৃত হয় দ্রুত string search বা pattern matching-এর ক্ষেত্রে। তাই সঠিক উত্তর হলো ক) Fast string search।
Suffix Tree ব্যাখ্যা:
-
এটি একটি বিশেষ ডেটা স্ট্রাকচার যা কোনো স্ট্রিংয়ের সব suffix সংরক্ষণ ও সূচিবদ্ধ (indexed) করে।
-
এর প্রধান সুবিধা হলো বড় টেক্সটে দ্রুত সাবস্ট্রিং অনুসন্ধান করা যায়, কারণ সার্চের সময় জটিলতা কেবল pattern-এর দৈর্ঘ্যের ওপর নির্ভরশীল (O(|P|)), টেক্সটের দৈর্ঘ্যের ওপর নয়।
মূল ব্যবহার ক্ষেত্র:
-
Substring Search: কোনো নির্দিষ্ট প্যাটার্ন (P) টেক্সট (T)-এর মধ্যে কতবার ও কোথায় আছে তা দ্রুত খুঁজে বের করা।
-
Longest Repeated Substring: স্ট্রিংয়ে সবচেয়ে বড় পুনরাবৃত্ত সাবস্ট্রিং শনাক্ত করা।
-
Longest Common Substring: দুই বা ততোধিক স্ট্রিংয়ের মধ্যে সাধারণ সবচেয়ে বড় সাবস্ট্রিং খুঁজে বের করা।
-
Shortest Unique Substring: এমন সবচেয়ে ছোট সাবস্ট্রিং নির্ধারণ করা যা পুরো স্ট্রিংয়ে মাত্র একবার পাওয়া যায়।
ভুল বিকল্পগুলো:
-
(খ) Minimum cut: এটি গ্রাফ থিওরির সমস্যা, যার সমাধানে Max-Flow Min-Cut theorem বা Edmonds-Karp, Dinic’s algorithm ব্যবহৃত হয়।
-
(গ) Sorting numbers: এটি Merge Sort, Quick Sort, বা Radix Sort দিয়ে সম্পন্ন হয়, suffix tree দিয়ে নয়।
-
(ঘ) Graph coloring: এটি একটি combinatorial optimization সমস্যা, যা সাধারণত backtracking বা heuristic algorithm দিয়ে সমাধান করা হয়।
অতএব, suffix tree সবচেয়ে উপযোগী দ্রুত string search ও pattern matching-এর জন্য।

0
Updated: 14 hours ago
নিচের কোনটি প্রোগ্রামিং ভাষা নয়?
Created: 3 weeks ago
A
Python
B
Java
C
Ruby
D
Excel
প্রোগ্রামিং ল্যাঙ্গুয়েজ হলো কম্পিউটার সিস্টেমে প্রোগ্রাম রচনার জন্য ব্যবহৃত শব্দ, বর্ণ, সংখ্যা, সংকেত এবং এগুলোর বিন্যাসের নিয়মের সমষ্টি। বৈশিষ্ট্য অনুযায়ী প্রোগ্রামিং ল্যাঙ্গুয়েজকে প্রধানত পাঁচ ভাগে ভাগ করা যায়:
-
Machine Language
-
Assembly Language
-
High Level Language
-
Very High Level Language
-
Natural Language
কিছু জনপ্রিয় প্রোগ্রামিং ল্যাঙ্গুয়েজ:
-
জাভা (Java):
-
হাই লেভেল প্রোগ্রামিং ল্যাঙ্গুয়েজ।
-
১৯৯১ সালে সান মাইক্রো সিস্টেম এই ভাষার সূচনা করে।
-
১৯৯৫ সালে জেমস গসলিং জাভা প্রোগ্রামিং ল্যাঙ্গুয়েজ উদ্ভাবন করেন।
-
-
পাইথন (Python):
-
হাই লেভেল, অবজেক্ট-ওরিয়েন্টেড প্রোগ্রামিং ল্যাঙ্গুয়েজ।
-
১৯৮৯ সালে ভ্যান রোসাম পাইথন প্রোগ্রামিং ল্যাঙ্গুয়েজ উদ্ভাবন করেন।
-
-
C#:
-
অবজেক্ট-ওরিয়েন্টেড, কম্পোনেন্ট-ভিত্তিক প্রোগ্রামিং ভাষা।
-
উৎস:

0
Updated: 3 weeks ago
Von Neumann architecture uses__________memory for data and instructions.
Created: 14 hours ago
A
separate
B
same
C
no
D
None of the above
Von Neumann architecture-এ data ও instruction উভয়ের জন্য একই মেমরি ব্যবহৃত হয়, তাই সঠিক উত্তর হলো খ) same।
Von Neumann Architecture ব্যাখ্যা:
-
এটি stored-program concept-এর ওপর ভিত্তি করে গঠিত, যেখানে প্রোগ্রামের নির্দেশনা (instructions) এবং ডেটা একই shared memory space-এ সংরক্ষিত থাকে।
-
মূল বৈশিষ্ট্য (Von Neumann Bottleneck): CPU একই বাস (bus) ব্যবহার করে মেমরি থেকে নির্দেশনা ও ডেটা উভয়ই আনে। ফলে এক সময়ে কেবল একটি কাজ (instruction fetch বা data fetch) করা যায়, যা প্রসেসিং গতি কমিয়ে দেয়।
-
Contrast with Harvard Architecture: Harvard স্থাপত্যে instructions ও data-এর জন্য আলাদা মেমরি ও আলাদা বাস থাকে, ফলে একসাথে নির্দেশনা ও ডেটা আনা সম্ভব হয়, যা সিস্টেমকে দ্রুততর করে।
অতএব, Von Neumann স্থাপত্যের মূল বৈশিষ্ট্য হলো — একই মেমরিতে ডেটা ও নির্দেশনা সংরক্ষণ (same memory for both)।

0
Updated: 14 hours ago
নিচের কোন সফটওয়্যারটি মূলত একটি ইউটিলিটি প্রোগ্রাম হিসেবে কাজ করে?
Created: 1 month ago
A
Microsoft Excel
B
Antivirus software
C
Notepad
D
Spider Software
ইউটিলিটি প্রোগ্রাম (Utility Program)
সংজ্ঞা
ইউটিলিটি প্রোগ্রাম হলো এমন এক ধরনের সফটওয়্যার যা কম্পিউটার সিস্টেমের রক্ষণাবেক্ষণ, সুরক্ষা ও কার্যকারিতা উন্নত করতে ব্যবহৃত হয়।
যেমন: অ্যান্টিভাইরাস সফটওয়্যার কম্পিউটারকে ভাইরাস, ম্যালওয়্যার ও স্পাইওয়্যার থেকে রক্ষা করে, যা সরাসরি ইউটিলিটি প্রোগ্রামের অন্তর্ভুক্ত।
বৈশিষ্ট্য ও কার্যাবলি
কম্পিউটার সিস্টেমকে সার্বিকভাবে দেখাশোনা করে এবং স্পিড বজায় রাখতে সাহায্য করে।
অ্যাপ্লিকেশন প্রোগ্রাম পরিচালনা ও সঠিকভাবে চালাতে সহায়তা করে।
ফাইল তৈরি, সংরক্ষণ, মুছে ফেলা, ডিস্ক ফরম্যাট, অ্যাপ্লিকেশন লোড ইত্যাদি কাজ করে।
উইন্ডোজ অপারেটিং সিস্টেমে System Tools-এর অধীনে অনেক ইউটিলিটি প্রোগ্রাম অন্তর্ভুক্ত আছে।
সিস্টেমের ত্রুটি শনাক্তকরণ ও সংশোধন, ভাইরাস চেক করা, ডিস্ক পার্টিশন ও রক্ষণাবেক্ষণ করে।
এসব প্রোগ্রামকে প্রায়ই Maintenance Tools-ও বলা হয়।
System Tools-এর অন্তর্ভুক্ত কিছু ইউটিলিটি প্রোগ্রাম
Disk Fragmenter
Scan Disk
Drive Converter
Compression Tools
System Monitor
ইউটিলিটি প্রোগ্রামের উদাহরণ
System Cleaning Tools: CCleaner
File Compression: WinRAR, WinZip, 7-Zip
Disk Management: Disk Defragmenter, EaseUS Partition Master
Antivirus/Antimalware: Avast, Norton, McAfee
Backup Software: Acronis True Image, Macrium Reflect
System Monitoring: Task Manager, HWMonitor
System Information: Speccy
File Recovery: Recuva, Disk Drill
Driver Management: Driver Booster
VPN Software: ExpressVPN, NordVPN
Clipboard Manager: ClipClip
Uninstaller Tools: Revo Uninstaller
Password Manager: LastPass, Dashlane
উৎস
মৌলিক কম্পিউটার শিক্ষা, বিবিএ প্রোগ্রাম, উন্মুক্ত বিশ্ববিদ্যালয়
Encyclopedia Britannica

0
Updated: 1 month ago