Affiliation:
1. Department of Mathematics and Computer Science, Calvin College, Grand Rapids, MI
Abstract
By applying object-oriented design to the definition of a binary search tree, Berman and Duvall [1] designed a data structure comprised of three classes: (i) an Empty
bst
class to model empty binary search trees, (ii) a NonEmpty
bst
class to model non-empty binary search trees, and (iii) a
bst
base class for common attributes of Empty
bst
and NonEmpty
bst
objects. That paper noted the problem of inserting new values into such a structure: since insertions occur at an Empty
bst
object, an Empty
bst
would have to "turn into" a NonEmpty
bst
; a behavior beyond the capabilities of the classes in most languages.This paper presents three C++ solutions to the insertion problem in their order of development. The first solution uses a procedural programming technique, with the second and third solutions shifting to a more object-oriented approach. This chronology illustrates the author's ongoing battle to shift from procedural to object-oriented thinking.
Publisher
Association for Computing Machinery (ACM)
Cited by
3 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. OO overkill;ACM SIGCSE Bulletin;2001-03
2. OO overkill;Proceedings of the thirty-second SIGCSE technical symposium on Computer Science Education - SIGCSE '01;2001
3. Design patterns for data structures;ACM SIGCSE Bulletin;1998-03