Algorithms for approximate string matching
Information and Control
A differential compiler for computer animation
SIGGRAPH '86 Proceedings of the 13th annual conference on Computer graphics and interactive techniques
A software tools sampler
Software—Practice & Experience
A simple row-replacement method
Software—Practice & Experience
The String-to-String Correction Problem
Journal of the ACM (JACM)
A language for bitmap manipulation
ACM Transactions on Graphics (TOG)
A linear space algorithm for computing maximal common subsequences
Communications of the ACM
Proceedings of the ACM SIGPLAN SIGOA symposium on Text manipulation
Proceedings of the ACM SIGPLAN SIGOA symposium on Text manipulation
Design of the PEN video editor display module
Proceedings of the ACM SIGPLAN SIGOA symposium on Text manipulation
EMACS the extensible, customizable self-documenting display editor
Proceedings of the ACM SIGPLAN SIGOA symposium on Text manipulation
EDUCATIONAL PEARL: Biological sequence similarity
Journal of Functional Programming
Hi-index | 0.00 |
Interactive screen editors repeatedly determine terminal command sequences to update a screen row. Computing an optimal command sequence differs from the traditional sequence comparison problem in that there is a cost for moving the cursor over unedited characters and the cost of an n-character command is not always the cost of n one-character commands. For example, on an ANSI-standard terminal, it takes nine bytes to insert one character, ten to insert two, eleven to insert three, and so on. This paper presents an O(MN) dynamic programming algorithm for row replacement where an n-character command costs &agr;n + &bgr; for constants &agr; and &bgr;. M is the length of the original row and N is the length of its replacement. Also given is an O(Cost × (M + N)) “greedy” algorithm for optimal row replacement. Here Cost is the optimal cost (in bytes) of the replacement, so the algorithm is fast when the required update is small. Though the algorithm is rather complicated, it is fast enough to be useful in practice.