@techtipsvn
Thuật toán

Merge sort: log n chính là số tầng chia đôi, không cần công thức

log n chính là số tầng chia đôi

2026-08-2106 slide1 phút đọcGiải thích
Slide bìa: Merge sort: log n chính là số tầng chia đôi, không cần công thứcSlide 2Slide 3Slide 4Slide 5Slide 6
cuộn, vuốt, hoặc phím ←→01 / 06

Cùng một bài, đọc bằng chữ. Nhanh hơn và tìm lại được bằng Ctrl+F.

Tám số, bốn tầng

  1. Chia8 số thành hai nửa, mỗi nửa 4 số
  2. Chia tiếpMỗi nửa lại thành hai phần 2 số
  3. Chạm đáyCòn 1 số thì tự nó đã đúng thứ tự
  4. Trộn ngượcGhép đôi một lên, mỗi lần trộn hai dãy

Trộn hai dãy đã đúng thứ tự

Nhìn phần tử đầu của hai dãy, lấy số nhỏ hơn ra trước, rồi lặp lại. Vì hai dãy đã đúng thứ tự sẵn, mỗi bước chỉ cần so một cặp. Đó là toàn bộ bước trộn.

Cái giá phải trả

Bước này cần một mảng phụ cỡ n

n log n đến từ đâu

Mỗi tầng xử lý tổng cộng n phần tử. Số tầng là số lần chia đôi được, tức log n. Nhân hai thứ đó ra n log n. Đếm tầng là đủ, không cần công thức truy hồi.

Merge sort được gì, mất gì

Ưu điểm

Luôn n log n, kể cả trường hợp xấu nhất

Ổn định, hợp khi sắp theo nhiều khoá

Chạy được trên dữ liệu lớn hơn RAM

Nhược điểm

Cần mảng phụ cỡ n, không sắp xếp tại chỗ

Mảng cỡ vừa thì chậm hơn quick sort

Đệ quy log n tầng, code khó đọc hơn

Bài sau: quick sort

Nhanh hơn merge sort trên thực tế, nhưng có một trường hợp làm nó sập về n².

techtipstechtipsvnthuattoanhoclaptrinhlaptrinh
Đọc tiếp

Bài khác cùng chủ đề

Slide bìa: React Native 0.88: thêm SceneDelegate trước khi build bằng Xcode 2709

React Native 0.88: thêm SceneDelegate trước khi build bằng Xcode 27

feature2′ đọc19.10
Slide bìa: Copilot ngừng Claude Opus 4.8, Opus 5 và GPT-5.6 Terra ngày 16/11: đổi sang model nào07

Copilot ngừng Claude Opus 4.8, Opus 5 và GPT-5.6 Terra ngày 16/11: đổi sang model nào

Tin1′ đọc18.10
Slide bìa: Review bằng AI khiến PostgreSQL 19 gỡ 8–10 tính năng? Người viết code kể lại09

Review bằng AI khiến PostgreSQL 19 gỡ 8–10 tính năng? Người viết code kể lại

Tin2′ đọc17.10
Slide bìa: AVIF nhẹ hơn, JPEG XL giữ ảnh .jpg cũ: chọn định dạng ảnh nào cho web?08

AVIF nhẹ hơn, JPEG XL giữ ảnh .jpg cũ: chọn định dạng ảnh nào cho web?

Giải thích2′ đọc17.10

Mỗi ngày một bài mới.

Mẹo, giải thích và tin công nghệ cho sinh viên và dev mới đi làm. Một người viết, đăng đều.

Bài cũng được đăng lên TikTok, ở dạng slide.

TikTok@techtipsvn