Tiệm Công Nghệ

Đang hiện gợi ý.

Đang mở danh mục của tiệm…
↑↓ để di chuyển↵ để mởesc để đóng
Tìm kiếm Tiệm Công Nghệ
Animationv1.0.0~14 KB (gzip)

Bubble Sort Animation

Bản tương tác của video ngắn: các cột bắt chéo khi đổi chỗ, đuôi đã sắp xếp dài dần và cú thoát sớm

Miễn phíMiễn phí
Định dạng

.zip · HTML / CSS / JS · v1.0.0

Miễn phí — không cần tài khoản hay email. Luôn là bản mới nhất.

Đang chạy trực tiếp

Phiên bản
Độ rộng khung xem
Thu phóng

Giới thiệu

Đây là bản tương tác của animation bubble sort trong video ngắn. Nó sắp xếp đúng dữ liệu của video, 5 2 8 1 7 3 6 4, và kết thúc ở đúng 25 lần so sánh, 14 lần đổi chỗ — nhưng bạn có thể dừng lại, đi từng bước, chạy chậm và đổi số tuỳ ý. Khung code chạy từng bước chính là đoạn bubbleSort trên trang thuật toán Sắp xếp nổi bọt, khớp từng dòng, nên bạn xem gì thì trang đó dạy đúng cái đó.

Mỗi lượt đều dễ theo dõi. Hai phần tử liền kề đang so sánh sáng lên cùng nhãn j và j + 1. Nếu sai thứ tự, cột lớn hơn nhảy qua cột nhỏ hơn rồi hai cột đổi chỗ; cờ swapped bật lên. Giá trị lớn nhất của lượt trôi về cuối, và đuôi đã sắp xếp lớn dần từ bên phải kèm vài bong bóng. Khi một lượt mà swapped vẫn tắt, thuật toán dừng ngay: đó là thoát sớm, được ghi rõ trong chú thích.

  • Bộ đếm so sánh, đổi chỗ và lượt, cùng một hàng cho mỗi lượt cho biết lượt đó so sánh bao nhiêu lần và đổi chỗ bao nhiêu lần
  • Có sẵn dữ liệu của video, ngẫu nhiên, gần như đã sắp xếp (để dễ thấy thoát sớm) và đảo ngược; hoặc tự gõ dãy số của bạn
  • Trình phát đầy đủ với thanh kéo và tốc độ 0.5×–4×, đẹp khi chiếu slide hay quay video
  • Mọi màu sắc, bo góc, font chữ và thời gian đều là CSS custom property; sáng tối theo trang của bạn
  • Không cần cài gì: một file CSS và một script, hoặc một component React

Tính năng · 9

  • Diễn lại bubbleSort có thoát sớm bằng cờ swapped đúng như trang thuật toán miễn phí viết, khung code khớp từng dòng
  • Cặp đang so sánh sáng lên; khi đổi chỗ, cột lớn hơn nhảy qua cột nhỏ hơn, còn đuôi đã sắp xếp lớn dần từ bên phải
  • Cờ swapped là một công tắc ngay trên sân khấu: bật lên khi có lần đổi chỗ đầu tiên của lượt, và một lượt mà công tắc vẫn tắt thì dừng thuật toán, kèm chú thích nói rõ điều đó
  • Bộ đếm so sánh, đổi chỗ và lượt, cùng một hàng cho mỗi lượt: dữ liệu mặc định 5 2 8 1 7 3 6 4 kết thúc đúng 25 lần so sánh và 14 lần đổi chỗ
  • Có sẵn dữ liệu của video, ngẫu nhiên, gần như đã sắp xếp (thấy rõ cú thoát sớm) và đảo ngược; hoặc tự gõ dãy số của bạn (tối đa 24 số)
  • Mỗi bước có chú thích bằng lời dễ hiểu, các dòng code đang chạy được tô sáng
  • Trình phát: chạy, dừng, lùi, tiến từng bước, về đầu, kéo thanh thời gian, tốc độ 0.5×–4×, tuỳ chọn lặp lại
  • Bản HTML/CSS/JS thuần và bản React (dùng được với Next.js), đủ sáng và tối
  • Không phụ thuộc thư viện, khoảng 14 KB sau gzip (cả script lẫn CSS)

Cách dùng

Xem video xong và muốn dùng animation này? Chọn trường hợp của bạn bên dưới. Với HTML thuần chỉ mất khoảng hai phút, không cần build, không cần framework.

  1. Giải nén bubble-sort-animation-vanilla.zip. Chép bubble-sort-animation.css và bubble-sort-animation.js cạnh trang của bạn (hoặc vào thư mục assets của website).

  2. Trong <head> của trang, nhúng stylesheet và script một lần:

    <link rel="stylesheet" href="bubble-sort-animation.css" />
    <script src="bubble-sort-animation.js" defer></script>
    
  3. Chỗ nào cần animation, đặt một phần tử rỗng có data-bubble-sort-animation:

    <!-- dữ liệu của video: 5 2 8 1 7 3 6 4 -->
    <div class="bubble-sort-animation" data-bubble-sort-animation></div>
    
    <!-- dãy số của bạn, ẩn hàng nhập và khung code: đủ gọn để đặt vào slide -->
    <div
      class="bubble-sort-animation"
      data-bubble-sort-animation
      data-bubble-sort-animation-values="9 4 7 1 8"
      data-bubble-sort-animation-inputs="false"
      data-bubble-sort-animation-code="false"
    ></div>
    
  4. Mở trang lên. Animation tự chạy; bấm vào nó một lần để nhận phím, sau đó Space để chạy / dừng, ← / → để đi từng bước, Home để chạy lại từ đầu.

Tuỳ chọn qua data attribute, đều bắt đầu bằng data-bubble-sort-animation-:

Attribute Mặc định Tác dụng
-values theo preset Dãy số của bạn, cách nhau bằng dấu cách hoặc dấu phẩy: số nguyên từ -999 đến 999, tối đa 24 số
-preset video video (5 2 8 1 7 3 6 4), random, nearly-sorted hoặc reversed; bị bỏ qua khi có -values
-size 8 Số cột của random, nearly-sorted và reversed (2–24)
-seed 7 Chọn mảng ngẫu nhiên nào: cùng seed luôn ra cùng một mảng
-speed 1 Từ 0.25 đến 4
-autoplay true Tự chạy khi tải xong (không bao giờ tự chạy khi bật giảm chuyển động)
-loop false Dừng một chút ở kết quả rồi chạy lại từ đầu
-code true false để ẩn khung code
-inputs true false để ẩn hàng preset và ô nhập số của bạn

Muốn xem một lượt dừng sớm, thử data-bubble-sort-animation-preset="nearly-sorted": một lượt đã đưa các cặp về đúng chỗ, lượt kế tiếp không đổi chỗ lần nào.

Phần tử thêm vào sau khi trang đã tải (một tab, một modal, một route chuyển bằng JavaScript): gọi BubbleSortAnimation.init(container), hàm này trả về một hàm để gỡ bỏ. Muốn điều khiển toàn bộ thì dùng BubbleSortAnimation.createBubbleSortAnimation(element, options): nó trả về một handle có setValues, setPreset, shuffle, player (play, pause, stepForward, stepBack, seek, reset, setSpeed, setLoop) và destroy.

Hỏi về sản phẩm này

Chưa chắc có hợp dự án của bạn? Cứ hỏi — câu trả lời lấy từ chính trang này.

Câu trả lời do AI viết dựa trên trang này và có thể sai. Nội dung trên trang mới là chuẩn.

Lịch sử phiên bản

  1. 1.0.0First releaseMới nhất

    Plain HTML/CSS/JS and React builds of the step-by-step bubble sort animation with the early exit: bars that cross when they swap, a sorted tail that grows, the swapped flag, comparison / swap / pass counters, live code, player controls, your own numbers and presets, light and dark.

  2. Bản sửa lỗi và tính năng mới đều có ngay ở nút tải này — file tải về luôn là bản mới nhất.
  • AnimationSắp xếp

    Sorting Race

    Sáu thuật toán sắp xếp đua nhau trên cùng một bộ dữ liệu — mỗi nhịp một thao tác, về đích nhận huy chương

    Miễn phí
  • AnimationSắp xếp

    Quick Sort Animation

    Sắp xếp nhanh từng bước: phần tử chốt, hai con trỏ của Hoare và ngăn xếp gọi hàm luôn nông

    Miễn phí