Computer algorithms: introduction to design and analysis (2nd ed.)
Computer algorithms: introduction to design and analysis (2nd ed.)
Introduction to algorithms
Implementing the recursive APL code for dynamic programming
APL '90 Conference proceedings on APL 90: for the future
Jogging with APL along the shortest path
APL '92 Proceedings of the international conference on APL
APL '93 Proceedings of the international conference on APL
APL, dynamic programming, and the optimal control of electromagnetic brake retarders
APL '95 Proceedings of the international conference on Applied programming languages
Profiling, performance, and perfection (tutorial session)
APL '89 Proceedings of the ACM/SIGAPL conference on APL as a tool of thought (session tutorials)
Fundamentals of Computer Alori
Fundamentals of Computer Alori
The Design and Analysis of Computer Algorithms
The Design and Analysis of Computer Algorithms
Dynamic Programming
EGREGION: a branch coverage tool for APL
APL '98 Proceedings of the APL98 conference on Array processing language
Hi-index | 0.00 |
Dynamic programming is used infrequently by APL programmers, in spite of its ability to reduce the computational effort required to solve many problems. This paper uses the String Shuffle problem as the basis for a comparison of brute force, recursive, and dynamic programming algorithms. Simple algorithms for each of these approaches are designed and evaluated, then individually optimized and re-evaluated, to show the benefits of dynamic programming.The dynamic programming algorithm is then recast to use flow control structures recently introduced into ISI J and APL*PLUS III. Use of control structures in conjunction with dynamic programming results in orders of magnitude performance improvement over brute force and naive recursive algorithms. APL*PLUS III control structures are shown to provide a performance improvement of up to 30% over GOTO-based loops.