O-Charts: Towards an effective toolkit for teaching time complexity

Scott Barlowe, Andrew Scott · 2015

Scientists, business analysts, and others in a growing number of fields are trying to cope with the vast amount of data being generated. The lack of software that can efficiently process large data sets hinders insight into complex relationships. One of the most important concepts in learning how to construct efficient code is time complexity analysis with Big-O notation. Students often find time complexity difficult to learn and too abstract to apply in any meaningful way. Common instructional methods consist of a combination of mathematics and intuitive analysis which are often too cumbersome for practical application or cannot be extended to complex algorithms. Unfortunately, there are few tools available for teaching time complexity that students find concrete, straightforward, and applicable to real problems. In this paper, we present O-Charts, a first step in the development of a practical toolkit for teaching and applying time complexity analysis. O-Charts allow the systematic analysis of deeply nested loops where the use of control variables makes the number of executions difficult to define, calculate, and explain. We report initial results and our plans for future work.

Read the paper · More papers on PaperTik