Abstract
In this paper, we present an approach for the introduction of problem solving and algorithm development in the first computer science course. Our technique is a more formal and systematic approach to programming based on generalizing a pattern after studying and expanding on a sequence of specific problem instances. In our approach, the algorithm and justification of its correctness are developed together.
- 1 O. Astrachan. Pictures as invariants, in Proceedings of the 1991 SIGCSE Technical Symposium on Compute.r Science Education, pages 112-118, March 1991. Google Scholar
Digital Library
- 2 W.J. Collins. The trouble with for-loop invariants. In Proceedings of the 1988 SIGCSE Technical Symposium on Computer Science Education, pages 1-4, February 1988. Google Scholar
Digital Library
- 3 E.W. Dijkstra and W.H.3. Feijen. A Method of Programming. Addison Wesley, Reading, MA, 1988. Google Scholar
Digital Library
- 4 D. Gries. The Science of Programming. Springer- Verlag, New York, 1981. Google Scholar
Digital Library
- 5 D. Gries. Teaching calculation and discrimination: A more effective curriculum. Communications of the A CM, 34(3):44-55, March 1991. Google Scholar
Digital Library
- 6 P.B. Henderson. Discrete mathematics as precursor to programming. In Proceedings of the 1990 SIGCSE Technical Symposium on Computer Science Education, pages 17-21, February 1990. Google Scholar
Digital Library
- 7 B.L. Kurtz and J.M. Adams. Using concept expansion and level integration in an introductory computer science course. In Proceedings o} the 1988 SIGCSE Technical Symposium on Computer Science Education, pages 244-248, February 1988. Google Scholar
Digital Library
- 8 U. Manber. Using induction to design algorithms. Communicatzons of the ACM, 31(11):1300-1313, November 1988. Google Scholar
Digital Library
- 9 U. Manber. Introduction to Algorithms: A Creative Approach. Addison Wesley, Reading, MA, 1989. Google Scholar
Digital Library
- 10 P. Montague. A correctness proof for binary search. Computer Science Education, 2(1):81-89, 1991.Google Scholar
Cross Ref
- 11 W.C. Tam. Teaching loop invariants to beginners by example. In Proceedings of the 1992 SIGCSE Technical Symposium on Computer Science Education, pages 92-- 96, March 1992. Google Scholar
Digital Library
- 12 A.B. Tucker, W.J. Bradley, R.D. Cupper, and D.K. Garnick. Fundamentals of Computing I: Logic, Prob. lem Solving, Programs, and Computers. McGraw-Hill:, New York, 1992. Google Scholar
Digital Library
Index Terms
From specific problem instances to algorithms in the introductory course
Recommendations
Metaheuristics for large-scale instances of the linear ordering problem
ILS and GDA metaheuristics for the linear ordering problem are introduced.They are able to tackle large instances in line with real applications.Introduced methods are the first of their kind ever applied to large-sized instances.All best known ...
Solving the Course Timetabling Problem with a Hybrid Heuristic Algorithm
AIMSA '08: Proceedings of the 13th international conference on Artificial Intelligence: Methodology, Systems, and ApplicationsThe problem of curriculum-based course timetabling is studied in this work. In addition to formally defining the problem, we present a hybrid solution algorithm (Adaptive Tabu Search---ATS), which is aimed at minimizing violations of soft constraints. ...
From specific problem instances to algorithms in the introductory course
SIGCSE '94: Proceedings of the twenty-fifth SIGCSE symposium on Computer science educationIn this paper, we present an approach for the introduction of problem solving and algorithm development in the first computer science course. Our technique is a more formal and systematic approach to programming based on generalizing a pattern after ...






Comments