想像一下…

還記得 3.9 排序三個整數 嗎?當時我們用「比較+交換」把三個數由小到大排好:

int a, b, c;
cin >> a >> b >> c;

// 第 1 步:讓 a ≤ b(順序不對就交換 a、b)
if (a > b) {
    int t = a;
    a = b;
    b = t;
}
// 第 2 步:讓 a ≤ c,做完後 a 就是三者中最小的
if (a > c) {
    int t = a;
    a = c;
    c = t;
}
// 第 3 步:最後排好 b、c
if (b > c) {
    int t = b;
    b = c;
    c = t;
}

cout << a << " " << b << " " << c << endl;  // 由小到大

登入後即可閱讀完整內容

語法書免費開放給所有 AACPOJ 帳號,註冊只要一分鐘。