This is an advanced course for computer science programming or computer engineering. It can also be used in an advanced math class for grades 11 and 12. The unit deals with different algorithms and problem solving techniques. Plus, it contains a lot of information about various kinds of sorting algorithms. Each lesson contains a problem set along with a solution set--useful for improving problem solving and testing skills. The basic prerequisites of the course are as follows: 1. Knowledge of any one programming language like (C, C++,Java) 2. Knowledge of Data Structures. 3. Optional: Discrete Mathematics.


  • Career & Technical Education > General
  • Career & Technical Education > Technology
  • Mathematics > General

Education Levels:

  • Grade 11
  • Grade 12
  • Higher Education
  • Graduate
  • Undergraduate-Upper Division
  • Undergraduate-Lower Division





Access Privileges:


License Deed:

Creative Commons Attribution 3.0


Update Standards?

SCI.9-12.IE.1.a: Science

Select and use appropriate tools and technology (such as computer-linked probes, spreadsheets, and graphing calculators) to perform tests, collect data, analyze relationships, and display data.

SCI.9-12.IE.1.b: Science

Identify and communicate sources of unavoidable experimental error.

SCI.9-12.IE.1.g: Science

Recognize the usefulness and limitations of models and theories as scientific representations of reality.

SCI.9-12.IE.1.l: Science

Analyze situations and solve problems that require combining and applying concepts from more than one area of science.

MA.D.1.4.1: Mathematics

describes, analyzes, and generalizes relationships, patterns, and functions using words, symbols, variables, tables, and graphs.

MA.D.1.4.2: Mathematics

determines the impact when changing parameters of given functions.

SC.H.3.4.1: Science

knows that performance testing is often conducted using small-scale models, computer simulations, or analogous systems to reduce the chance of system failure.

SC.H.3.4.6: Science

knows that scientific knowledge is used by those who engage in design and technology to solve practical problems, taking human values and limitations into account.

MA.9-12.MA.912.A.10.1: Mathematics

Use a variety of problem-solving strategies, such as drawing a diagram, making a chart, guessing- and-checking, solving a simpler problem, writing an equation, working backwards, and creating a table.

MA.9-12.MA.912.A.10.2: Mathematics

Decide whether a solution is reasonable in the context of the original situation.

MA.9-12.MA.912.D.1.1: Mathematics

Use recursive and iterative thinking to solve problems, including identification of patterns, population growth and decline, and compound interest.
Curriki Rating
On a scale of 0 to 3
On a scale of 0 to 3

This resource was reviewed using the Curriki Review rubric and received an overall Curriki Review System rating of 2, as of 2009-07-17.

Component Ratings:

Technical Completeness: 2
Content Accuracy: 2
Appropriate Pedagogy: 0

Reviewer Comments:

This introduction can be found. However, it should be noted that the title tab is misspelled, which may make it difficult to locate in a search. The history of the algorithm is concise and factual. There are two examples for the use of algorithm which are "real-world" and may relate to students, particularly those in metropolis or suburban areas. Because this unit is an introduction, there is no pedagogy. However, graphic organizers could be of benefit if used by the teacher. A KWL or T-chart maybe the best graphic organizers to utilize with this topic. A visual cue or picture of an algorithm is suggested.

Not Rated Yet.

Non-profit Tax ID # 203478467