Ví dụ n = 4
mảng a = {1,2,3,1}
mảng b gồm giá trị từ 1 -> n. Đặt hết = 0. Tức là b[1] = 0, b[2] = 0 …v.v
Vòng for thứ nhất: Đếm số lần xuất hiện của từng giá trị trong mảng a:
i = 0 -> a[i] = 1 -> b[ a[0] ] = b[1] = 0+1 = 1;
i = 1 -> a[i] = 2 -> b[ a[1] ] = b[2] = 0+1 = 1;
i = 2 -> a[i] = 3 -> b[ a[2] ] = b[3] = 0+1 = 1;
i = 3 -> a[i] = 1 -> b[ a[3] ] = b[1] = 1+1 = 2;
Vòng for thứ hai: Tìm xem giá trị nào xuất hiện nhiều nhất.
max = 0;
i = 0 -> a[i] = 1 -> b[ a[0] ] = b[1] = 2. Mà 2 > max => max = 2;
i = 1 -> a[i] = 2 -> b[ a[1] ] = b[2] = 1 Mà 1 < max => bỏ qua
i = 2 -> a[i] = 3 -> b[ a[2] ] = b[3] = 1 Mà 1 < max => bỏ qua
i = 3 -> a[i] = 1 -> b[ a[3] ] = b[1] = 2 Mà 2 == max => bỏ qua
Vòng for thứ ba: In ra số mà xuất hiện nhiều nhất
i = 0 -> b[0] = 0 -> 0 < max => bỏ qua
i = 1 -> b[1] = 2 -> 2 == max => in ra số 1
i = 2 -> b[2] = 1 -> 1 < max => bỏ qua
i = 3 -> b[3] = 1 -> 1 < max => bỏ qua
Lời khuyên cho bạn là ra cửa hàng mua quyển vở và cái bút về nháp nhé.