پیدا کردن مقادیر تکراری (Find Duplicates)
اینجا «پیدا کردن مقادیر تکراری آرایه جاوا» را تمرین می کنیم. «تکراری (Duplicate)» یعنی عددی که بیش از یک بار آمده است. با دو «حلقه (Loop)» می گردیم و هر عدد تکراری را چاپ می کنیم.
روش دوبخشی: مقایسه جفتی عناصر
در حلقه بیرونی، هر عدد انتخاب می شود. سپس در حلقه درونی، با بقیه عناصرِ بعدی مقایسه می شود. اگر برابر بودند، آن عدد تکراری است و چاپ می شود.
int[] nums = {1, 2, 3, 2, 4, 5, 1};
for (int i = 0; i < nums.length; i++) {
for (int j = i + 1; j < nums.length; j++) {
if (nums[i] == nums[j]) {
System.out.println("Duplicate: " + nums[i]);
}
}
}
گام های عملی
- آرایه اعداد را بساز.
- با حلقه بیرونی، هر خانه را انتخاب کن.
- با حلقه درونی، با خانه های بعدی مقایسه کن.
- اگر برابر بودند، مقدار تکراری را چاپ کن.
نکته: ممکن است یک مقدار، بیش از یک بار چاپ شود. چون با چند خانه برابر روبه رو می شود.
اگر خواستی تکراری ها را حذف کنی، به حذف تکراری ها برو. همچنین برای تمرینِ ترکیب داده ها، ادغام دو آرایه را ببین. این خود صفحه هم مرجع «پیدا کردن مقادیر تکراری» است.
منابع W3Schools مرتبط: Remove Duplicates و Shuffle Array.
جمع بندی سریع
- دو حلقه برای مقایسه جفتی بزن.
- برابر بودند، همان مقدار تکراری است.
- ممکن است یک مقدار چندبار چاپ شود.
- برای حذف، از Set کمک بگیر.