An Efficient List-Moving Algorithm Using Constant Workspace An efficient algorithm is presented for moving arbitrary list structures, using no storage (apart from program variables) other than that required to hold the original list and the copy. The original list is destroyed as it is moved. No mark bits are necessary, but pointers to the copy must be distinguishable from pointers to the original. The algorithm is superior in execution speed to previous algorithms for the same problem. Some variations and extensions of the algorithm are discussed. CACM June, 1976 Clark, D. W. list moving, list copying, LISP, space complexity, constant workspace 4.34 4.49 5.25 CA760607 JB January 4, 1978 1:43 PM 1024 4 2855 1051 4 2855 1102 4 2855 1132 4 2855 1390 4 2855 1486 4 2855 1549 4 2855 1706 4 2855 1826 4 2855 1869 4 2855 1878 4 2855 1972 4 2855 378 4 2855 2060 4 2855 2155 4 2855 2156 4 2855 2156 4 2855 2168 4 2855 2168 4 2855 2361 4 2855 2438 4 2855 2513 4 2855 2513 4 2855 2665 4 2855 2719 4 2855 2723 4 2855 2723 4 2855 2723 4 2855 2736 4 2855 2736 4 2855 2833 4 2855 2838 4 2855 2842 4 2855 2855 4 2855 2855 4 2855 2855 4 2855 2855 4 2855 2855 4 2855 2855 4 2855 2855 4 2855 2855 4 2855 2879 4 2855 2944 4 2855 2944 4 2855 2954 4 2855 3074 4 2855 3074 4 2855 3077 4 2855 3080 4 2855 3106 4 2855 3106 4 2855 3106 4 2855 3106 4 2855 3106 4 2855 3112 4 2855 3112 4 2855 3112 4 2855 627 4 2855 106 4 2855 210 5 2855 1549 5 2855 1826 5 2855 1972 5 2855 2513 5 2855 2766 5 2855 2833 5 2855 2855 5 2855 2855 5 2855 2855 5 2855 2998 5 2855 3106 5 2855 1549 6 2855 210 6 2855 1972 6 2855 2665 6 2855 2766 6 2855 2855 6 2855 2954 6 2855 2998 6 2855