#include #define N 9 void IN(int a[], int n, int vt) { printf("vt=%d\n", vt); for (int i = 0; i < n; i++) { for (int j = 0; j < n; j++) { if (j == i) printf("(%d) ", a[j]); // đánh dấu phần tử đang xét else printf("%d ", a[j]); } printf("\n"); } printf("\n"); } void INSERT_SORT_TRACE(int a[], int n) { for (int vt = 0; vt < n; vt++) { int key = a[vt]; int j = vt - 1; while (j >= 0 && a[j] > key) { a[j + 1] = a[j]; j--; } a[j + 1] = key; IN(a, n, vt); } } int main() { int a[N] = {2, 9, 2, 4, 7, 6, 8, 3, 9}; // mảng ban đầu giống hình INSERT_SORT_TRACE(a, N); return 0; }