شمارش فراوانی کاراکتر (Count Character Frequency)
می خواهیم ببینیم هر حرف چندبار آمده است. مثل شمردن حروف در کلمه «banana». راه حل ساده، استفاده از HashMap است؛ دیکشنری ای که به هر کلید، یک مقدار می دهد.
ایده اصلی با HashMap
برای هر کاراکتر، یک شمارنده نگه می داریم. سپس در یک حلقه، مقدارش را یکی زیاد می کنیم. متد getOrDefault اگر کلید نبود، صفر برمی گرداند.
import java.util.HashMap;
public class Main {
public static void main(String[] args) {
String text = "banana";
HashMap<Character, Integer> freq = new HashMap<>();
for (char c : text.toCharArray()) {
freq.put(c, freq.getOrDefault(c, 0) + 1);
}
System.out.println(freq);
// Output: {a=3, b=1, n=2}
}
}
گام های عملی
- یک متغیر (Variable) رشته ای بساز.
- یک HashMap برای شمارش ایجاد کن.
- روی حروف حلقه بزن و مقدار را افزایش بده.
- در پایان، نقشه فراوانی را چاپ کن.
نکته: اگر فاصله ها مزاحمند، اول از حذف فاصله های خالی استفاده کن.
برای کار با حروف، صفحه تبدیل رشته به آرایه کمک بزرگی است. همچنین این صفحه شمارش فراوانی کاراکتر را به عنوان مرجع نگه دار.
جمع بندی سریع
- HashMap کلید را به شمارنده وصل می کند.
- getOrDefault نبودن کلید را صفر می گیرد.
- حلقه روی حروف، شمارنده ها را زیاد می کند.
- خروجی نمونه: {a=3, b=1, n=2} برای banana.