Contoh
Tiap contoh memuat fenomena yang ingin ditunjukkan. Buka salah satu, lalu tekan putar.
Suntingan minimal
Satu baris berubah. D kecil, dan sebagian besar lattice adalah satu snake panjang — inilah kenapa diff cepat pada perubahan nyata.
Buka di edit graph →#p=minimal-editSisipan murni
Tidak ada yang dihapus. Jalur hanya bergerak ke bawah lalu menyusuri diagonal: D sama dengan jumlah baris yang disisipkan.
Buka di edit graph →#p=pure-insertPenghapusan murni
Cermin dari sisipan murni: jalur hanya bergerak ke kanan. D sama dengan jumlah baris yang dihapus.
Buka di edit graph →#p=pure-deleteTransposisi
Dua blok bertukar tempat. Diff berbasis baris tidak punya konsep "pindah" — hasilnya satu blok dihapus dan disisipkan lagi di tempat baru.
Buka di edit graph →#p=transpositionKurung kurawal salah alamat
Fungsi baru disisipkan di antara dua fungsi lama. Ada tiga edit script yang sama-sama minimal — telusuri alternatifnya, dan salah satunya mengaitkan kurung kurawal penutup ke fungsi yang salah: inilah diff jelek yang pernah dilihat semua orang. Implementasi di sini kebetulan memilih yang terbaca; mana yang muncul ditentukan oleh tie-breaking, bukan oleh penilaian mana yang lebih masuk akal.
Buka di edit graph →#p=brace-misattributionSaat patience menang
Satu entri diganti dua entri baru. Ketiga algoritma sepakat D = 5 — sama-sama minimal — tetapi Myers memecahnya jadi dua hunk terpisah karena bebas mencocokkan baris berulang "enabled" dan "replicas" melintasi batas entri. Patience menolak berlabuh pada baris yang muncul lebih dari sekali, jadi ia berlabuh pada baris "- name:" yang unik dan menyatukan perubahan dalam satu blok. Panjang sama, keterbacaan tidak.
Buka di edit graph →#p=patience-winsKasus terburuk
Tidak ada satu pun elemen yang sama, jadi D = N + M dan tidak ada diagonal gratis sama sekali. Ini jalur patologis yang sengaja bisa dijangkau: pencarian berjalan di worker dengan step budget, jadi UI tidak pernah membeku.
Buka di edit graph →#p=worst-caseGranularitas karakter
Masukan yang sama pada tingkat karakter. Elemen yang dibandingkan adalah pilihan, bukan sifat bawaan diff — ganti granularitas dan lattice-nya berubah total.
Buka di edit graph →#p=char-level