Return to Table of Contents Previous Chapter

BIBLIOGRAPHY

Adelson-Velskii, G. M., and Landis, Y. M. [1962]. "An Algorithm for the Organization of Information." Doklady Akademia Nauk. 146(2), 263-266; Soviet Mathematics. 3, 1259-1263.

Aho, A. V., Hopcroft, J. E., and Ullman, J. D. [1983]. Data Structures and Algorithms. Reading, Mass.: Addison-Wesley.

Aho, A. V., and Ullman, J. D. [1972]. The Theory of Parsing, Translation, and Compiling, Vol. 1. Englewood Cliffs, N.J.: Prentice-Hall.

Aho, A. V., and Ullman, J. D. [1977]. Principles of Compiler Design. Reading, Mass.: Addison-Wesley.

Amble, O., and Knuth, D. E. [1974]. "Ordered Hash Tables." Computer Journal 17(2):135-142.

Austing, R. H., et al., eds. [1979]. "Curriculum '78: Recommendations for the Undergraduate Program in Computer Science--A Report of the ACM Curriculum Committee on Computer Science." Communications of the Association for Computing Machinery 22(3): 147-166.

Baase, S. [1978]. Computer Algorithms: Introduction to Design and Analysis. Reading, Mass.: Addison-Wesley.

Barnes, J. G. P. [1982]. Programming in Ada. Reading, Mass.: Addison-Wesley.

Barron, D. W. [1968]. Recursive Techniques in Programming. New York: American-Elsevier.

Bayer, R., and McCreight, E. M. [1972]. "Organization and Maintenance of Large Ordered Indices." Acta Informatica 1(3): 173-189.

Bays, C. [1977]. "A Comparison of Next-Fit, First-Fit, and Best-Fit." Communications of the Association for Computing Machinery 20(3):191-192.

Bell, D. A., and Deen, S. M. [1984]. "Hash Trees Versus B-Trees." Computer Journal 27(3):218-224.

Bell, J. R. [1970]. "The Quadratic Quotient Method: A Hash Code Eliminating Secondary Clustering." Communications of the Association for Computing Machinery 13(2): 107-109.

Ben-Ari, M. [1982]. Principles of Concurrent Programming. London: Prentice-Hall International.

Bentley, J. L. [1982]. Writing Efficient Programs. Englewood Cliffs, N.J.: Prentice-Hall.

Berry, J. T. [1986]. Advanced C Programming. New York: Prentice-Hall Press.

Bird, R. S. [1977a]. "Improving Programs by the Introduction of Recursion." Communications of the Association for Computing Machinery 20(11):856-863.

Bird, R. S. [1977b]. "Notes on Recursion Elimination." Communications of the Association for Computing Machinery 20(6): 434-439.

Bitner, J. R., and Reingold, E. M. [1975]. "Backtrack Programming Techniques." Communications of the Association for Computing Machinery 18:651-656.

Brooks, F. P. [1974]. The Mythical Man Month. Reading, Mass.: Addison-Wesley.

Bunneman, P., and Levy, L. [1980]. "The Towers of Hanoi Problem." Information Processing Letters 10:243-244.

Comer, D. [1979]. "The Ubiquitous B-Tree." Computing Surveys 11:121-137.

Crane, C. A. [1972]. Linear Lists and Priority Queues as Balanced Binary Trees. Unpublished Ph.D. Dissertation. Stanford University, Stanford, Calif.

Dahl, O.-J., Dijkstra, E. W., and Hoare, C. A. R. [1972]. Structured Programming. New York: Academic Press.

Dijkstra, E. W. [1972]. Notes on Structured Programming. London: Academic Press.

Dobosiewicz, W. [1978]. "Sorting by Distributive Partitioning." Information Processing Letters 7(1): 1-6.

Earley, J. [1970]. "An Efficient Context-Free Parsing Algorithm." Communications of the Association for Computing Machinery 13(2):94-102.

Elson, M. [1975]. Data Structures. Chicago, Ill.: Science Research Associates.

Fagin, R., Nievergelt, J., Pippenger, N., and Strong, R. H. [1978]. Extendible Hashing--A Fast Access Method for Dynamic Files. Research Rept. RJ2305. IBM Research Division, Yorktown Heights, N.Y.

Feller, W. [1975]. An Introduction to Probability Theory and Its Applicalions. 2nd ed. New York: Wiley.

Floyd, R. W. [1964]. "Algorithm 245: Treesort3." Communications of the Association for Computing Machinery 7(12):701.

Floyd, R. W. [1979]. "The Paradigms of Programming," Communications of the Association for Computing Machinery 22(8):455-460.

Fredkin, E. H. [1960]. "Trio Memory." Communications of the Association for Computing Machinery 3(9):490-500.

Garwick, J. V. [1964]. "Data Storage in Compilers." BIT 4:137-140.

Golomb, S. W., and Baumert, L. D. [1965]. "Backtrack Programming." Journal of the Association for Computing Machinery 12(4):516-524.

Greene, D. H., and Knuth, D. E. [1981]. Mathematics for the Analysis of Algorithms. Cambridge, Mass.: Birkhauser, Boston.

Harrison, S. P., and Steele, G. L., Jr. [1987]. C: A Reference Manual. Englewood Cliffs, N.J.: Prentice-Hall.

Hirschberg, D. S. [1973]. "A Class of Dynamic Memory Allocation Algorithms." Communications of the Association for Computing Machinery 16(10):615-618.

Hoare, C. A. R. [1962]. "Quicksort." ComputerJournal 5(1):10-15.

Horbibe, Y., and Nemetz, T. [1979]. "On the Max-Entropy Rule for a Binary Search Tree." Acta Informatica 12:63-72.

Horowitz, E. [1983]. Programming Languages: A Grand Tour. Rockville, Md.: Computer Science Press.

Horowitz, E., and Sahni, S. [1976]. Fundamentals of Data Structures. Woodland Hills, Calif.: Computer Science Press.

Horowitz, E., and Sahni, S. [1978]. Fundamentals of Computer Algorithms. Potomac, Md.: Computer Science Press.

Hu, T. C., and Tucker, A. C. [1971]. "Optimal Computer Search Trees and Variable-Length Alphabetic Codes." SIAM Journal of Applied Mathematics 21(4):514-532.

Huffman, D. A. [1952]. "A Method for the Construction of Minimum-Redundancy Codes." Proceedings of the Institute of Radio Engineers 40: 1098-1101.

Hull, M. E. C. [1984]. "A Parallel View of Stable Marriages." Information Processing Letters 18:63-66.

Johnson, D. B. [1975]. "Priority Queues with Update and Finding Minimum Spanning Trees." Information Processing Letters 4(3):53-57.

Jones, W. B. [1982]. Programming Concepts: A Second Course. Englewood Cliffs, N.J.: Prentice-Hall.

Kelley, A., and Pohl, I. [1987]. C by Dissection. Menlo Park, Calif.: Benjamin/Cummings.

Kernighan, B. W., and Plauger, P. J. [1978]. The Elements of Programming Style. 2nd ed. New York: McGraw-Hill.

Kernighan, B. W., and Plauger, P. J. [1981]. Software Tools in Pascal. Reading, Mass.: Addison-Wesley.

Kernighan, B. W., and Ritchie, D. M. [1978]. The C Programming Language. Englewood Cliffs, N.J.: Prentice-Hall.

Knuth, D. E. [1971]. "Optimum Binary Search Trees." Acta Informatica 1(1):14-25.

Knuth, D. E. [1973a]. The Art of Computer Programming. Vol. 1: Fundamental Algorithms. Reading, Mass.: Addison-Wesley.

Knuth, D. E. [1973b]. The Art of Computer Programming. Vol. 3: Searching and Sorting. Reading, Mass.: Addison-Wesley.

Koffman, E. B., Stemple, D., and Wardle, C. E. [1985]. "Recommended Curriculum for CSE, 1984." Communications of the Association for Computing Machinery 28(8):815-818.

Korsh, J. F. [1981]. "Greedy Binary Search Trees Are Nearly Optimal." Information Processing Letters 13(1):16-19.

Korsh, J. F. [1982]. "Growing Nearly Optimal Binary Search Trees." Information Processing Letters 14(3): 139-143.

Korsh, J. F., and Laison, G. [1983]. "A Multiple-Stack Manipulation Procedure." Communications of the Association for Computing Machinery 26(11):921-923.

Kruse, R. L. [1984]. Data Structures and Program Design. Englewood Cliffs, N.J.: Prentice-Hall.

Lapin, J. E. [1987]. Portable C and UNIX System Programming. Englewood Cliffs, N.J.: Prentice-Hall.

Larson, P. [1978]. "Dynamic Hashing." BIT 18(2):184-201.

Lin, S., and Kernighan, B. W. [1973]. "A Heuristic Algorithm for the Traveling Salesman Problem." Operations Research 21:498-516.

Linger, R. C., Mills, H. D., and Witt, B. I. [1979]. Structured Programming Theory and Practice. Reading, Mass.: Addison-Wesley.

Litwin, W. [1980]. "Linear Hashing: A New Tool for File and Table Addressing." Proceedings of the Sixth International Conference on Very Large Data Bases. Montreal, pp. 212-223.

Martin, W. A. [1971]. "Sorting." Computing Surveys 3:148-174.

Maurer, H. A., and Williams, M. R. [1972]. A Collection of Programming Problems and Techniques. Englewood Cliffs, N. J.: Prentice-Hall.

Maurer, W. D. [1968]. "An Improved Hash Code for Scatter Storage." Communications of the Association for Computing Machinery 11(1):35-37.

Maurer, W. D., and Lewis, T. G. [1975]. "Hash Table Methods." Computing Surveys 7(1):5-20.

Mehlhorn, K. [1975]. "Nearly Optimal Binary Search Trees." Acta Informatica 5:287-295.

Mehlhorn, K. [1977]. "A Best Possible Bound for the Weighted Path Length of Binary Search Trees." Society of Industrial and Applied Mathematics, Journal of Computers 6(2):235-239.

Miller, L. H., and Quilici, A. E. [1986]. Programming in C. New York: Wiley.

Morris, R. [1968]. "Scatter Storage Techniques." Communications of the Association for Computing Machinery 11(1):35-44.

Naur, P. (ed.). [1963]. "Revised Report on the Algorithmic Language ALGOL60," Communications of the Association for Computing Machinery 6:1-17.

Nievergelt, J. [1974]. "Binary Search Trees and File Organization." Computing Surveys 6(3):195-207.

Peterson, J. L. [1980]. Design of a Spelling Program: An Experiment in Program Design. Lecture Notes in Computer Science. New York: Springer-Verlag.

Peterson, J. L., and Norman, T. A. [1977] . "Buddy Systems." Communications of the Association for Computing Machinery 20(6):431-435.

Pratt, T. W. [1975]. Programming Languages: Design and Implementation. Englewood Cliffs, N.J.: Prentice-Hall.

Reingold, E. M., and Hansen, W. J. [1983]. Boston, Mass.: Little, Brown.

Robson, J. M. [1973]. "An Improved Algorithm for Traversing Binary Trees without Auxiliary Stack." Information Processing Letters 2:12-14.

Robson, J. M. [1977]. "A Bounded Storage Algorithm for Copying Cyclic Structures." Communications of the Association for Computing Machinery 20(6):431-433.

Robson, J. M. [1979]. "The Height of Binary Search Trees." Austrian Computer Journal 11(4):151-153.

Schorr, H., and Waite, W. M. [1967]. "An Efficient Machine-Independent Procedure for Garbage Collection in Various List Structures." Communications of the Association for Computing Machinery 10(8):501-506.

Sedgewick, R. [1977]. "Permutation Generation Methods." Computing Surveys 9:137-164.

Sedgewick, R. [1983]. Algorithms. Reading, Mass.: Addison-Wesley.

Shell, D. L. [1959]. "A High-Speed Sorting Procedure." Communications of the Association for Computing Machinery 2:30-32.

Standish, T. A. [1980]. Data Structure Techniques. Reading, Mass.: Addison-Wesley.

Stanfel, G. L. [1970]. "Tree Structures for Optimal Searching." Journal of the Association for Computing Machinery 19(3):508-517.

Stone, H. S. [1971]. "Parallel Processing with the Perfect Shuffle." IEEE Transactions on Computers C-20: 153-161.

Stone, H. S. [1972]. Introduction to Computer Organization and Data Structures. New York: Mc-Graw-Hill.

Stone, H. S. [1980]. Introduction to Computer Architecture. 2nd ed. Chicago, Ill.: Science Research Associates.

Sussenguth, E. H. Jr. [1963]. "Use of Tree Structures for Processing Files." Communications of the Association for Computing Machinery 6(5):272-279.

Tenenbaum, A. M., and Augenstein, M. J. [1981]. Data Structures Using Pascal. Englewood Cliffs, N.J.: Prentice-Hall.

Tremblay, J. P., and Sorenson, P. G. [1984]. An Introduction to Data Structures with Applications. 2nd ed. New York: McGraw-Hill.

Ullman, J. D. [1982]. Principles of Database Systems. Rockville, Md.: Computer Science Press.

Van Wijngaarden, A., et al. [1975]. "Revised Report on the Algorithmic Language ALGOL 68." Acta Informatica 5:1-236.

Walsh, T. R. [1982]. "The Towers of Hanoi Revisited: Moving the Rings by Counting the Moves." Information Processing Letters 15(2):64-67.

Weinberg, G. M. [1971]. The Psychology of Computer Programming. New York: Van Nostrand.

Wexelblat, R. L. [1981]. History of Programming Languages. New York: Academic Press.

Williams, J. W. J. [1964]. "Algorithm 232: Heapsort." Communications of the Association for Computing Machinery 7(6):347-348.

Wirth, N. [1973]. Systematic Programming: An Introduction. Englewood Cliffs, N.J.: Prentice-Hall.

Wirth, N. [1976]. Algorithms + Data Structures = Programs. Englewood Cliffs, N.J.: Prentice-Hall.

Return to Table of Contents