5
อัลกอริทึม Diff? [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้มีแนวโน้มที่จะเรียกร้องการอภิปรายการโต้แย้งการหยั่งเสียงหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน7 ปีที่ผ่านมา ฉันดูบ้าไปแล้วสำหรับคำอธิบายของอัลกอริธึม diff ที่ใช้งานได้และมีประสิทธิภาพ ที่ใกล้เคียงที่สุดที่ฉันได้รับคือลิงก์ไปยัง RFC 3284 (จากหลายบทความของ Eric Sink บล็อก) ซึ่งอธิบายในแง่ที่เข้าใจได้อย่างสมบูรณ์แบบรูปแบบข้อมูลที่เก็บผลลัพธ์ต่าง ๆ อย่างไรก็ตามไม่ได้กล่าวถึงว่าโปรแกรมจะบรรลุผลลัพธ์เหล่านี้อย่างไรในขณะที่ทำโปรแกรม ฉันพยายามค้นคว้าเรื่องความอยากรู้อยากเห็นแบบส่วนตัวเพราะฉันแน่ใจว่าจะต้องมีการแลกเปลี่ยนเมื่อใช้อัลกอริธึม diff ซึ่งค่อนข้างชัดเจนในบางครั้งเมื่อคุณดู diffs และสงสัยว่า "ทำไมโปรแกรม diff จึงเลือกสิ่งนี้เป็นการเปลี่ยนแปลง แทนที่จะเป็นเช่นนั้น "... ฉันจะหาคำอธิบายเกี่ยวกับอัลกอริทึมที่มีประสิทธิภาพที่จะสิ้นสุดการแสดงผล VCDIFF ได้อย่างไร อย่างไรก็ตามถ้าคุณพบคำอธิบายของอัลกอริทึมจริงที่ใช้โดย DiffMerge ของ SourceGear นั่นจะดีกว่า หมายเหตุ: การเรียงลำดับทั่วไปที่ยาวที่สุดดูเหมือนจะไม่ได้เป็นอัลกอริธึมที่ VCDIFF ใช้ดูเหมือนว่าพวกเขากำลังทำอะไรที่ฉลาดกว่าโดยใช้รูปแบบข้อมูลที่ใช้