Introductory Algorithms Questionnaire

Your name   

Level in school

Sophomore  

Junior

Senior

Grad

Major(s)   

Are you familiar with Python? (one language in which algorithms may be coded for this course)

Yes

Barely  

No   

Other computer science courses you have taken or transfered in or have clear experience with

Comp 163  Discrete Systems

Comp 271  Data Structures

Math 131 or 161, Calculus I

What would you like to learn in this course?  Anything specific?

 

How much do you like math?

Lots

OK   

I generally avoid it

Ugh!

Learning Styles

You probably do not know exactly what learning situations you will find most useful for this specific class, but I would like a starting point based on your past experience. Please let me know if your desires change later.

In class we will integrate complex topics and do examples linking concepts in novel ways.  You will be expected to do the same.  These are some of the harder things to do and are worthwhile doing in class. Then there is the question of how much time to spend in class on basic, more factual material. What is important for you in dealing with new factual information that is covered in your text?

Like to hear material spoken; written sources are harder to deal with.

After a quick overview of the most important topics to look for, read the data at my pace, and ask questions and see/do examples in class.  

Read it and go over it myself , and mostly use class for harder things, except where I have specific questions.

Class and reading are not generally enough to really learn much. Doing/using new things is essential. Do you like to work alone at your own pace, and know you did everything? Does it help you to learn to do things and be able to apply them later yourself (not just get correct solutions on specific problems) when you consult in a group? You will have individual, not group, tests and take-home quizzes ultimately determining most of your grade. Given all this, how would you like to deal with work outside of class?

 

Prerequisites

Data structure and discrete math courses vary. It will help me to know where you start from in this course.  Many of the parts below should be familiar, but not all necessarily.

The remaning answer choices are shorthand. Here is what they mean:

Please select the most appropriate button in each case.

Mathematical context for algorithm analysis

Big Oh notation:

Know

Refresh

????

Big Theta notation:

Know

Refresh

????

Worst-case run time complexity:

Know

Refresh

????

Storage size needs in terms of big Oh:

Know

Refresh

????

Performance analysis of code using big Oh:

Know

Refresh

????

Other Mathematical Concepts

Induction:

Know

Refresh

????

Sum arithmetic series:

Know

Refresh

????

Sum geometric series:

Know

Refresh

????

Matrix multiplication:

Know

Refresh

????

Combinations and permutations:

Know

Refresh

????


Know and be able to use and implement the abstract data type:

Stacks

Know

Refresh

????

Queues

Know

Refresh

????

Arraylists

Know

Refresh

????

Linked lists

Know

Refresh

????

Binary search trees

Know

Refresh

????

Hash tables

Know

Refresh

????

Hash sets

Know

Refresh

????


Understand the time complexities of operations such as insert, delete, add, retrieve for

Stacks

Know

Refresh

????

Queues

Know

Refresh

????

Arraylists

Know

Refresh

????

Linked lists

Know

Refresh

????

Binary search trees

Know

Refresh

????

Hash tables

Know

Refresh

????

Hash sets

Know

Refresh

????


Miscellaneous Topics

Two dimensional array

Know

Refresh

????

Use recursion

Know

Refresh

????

Hash functions

Know

Refresh

????

Red-black trees

Know

Refresh

????

AVL trees

Know

Refresh

????

Finite Graphs

Know

Refresh

????


Algorithms for searching and sorting

Binary Search

Know

Refresh

????

Quicksort

Know

Refresh

????

Mergesort

Know

Refresh

????

Heapsort

Know

Refresh

????

Bucket or Radix sort

Know

Refresh

????


Thanks for the information!

      Be sure to press the Submit button when you are done!  

If you submit the form successfully you will see a thank-you message.  Otherwise go back and try submitting again, and if that does not work, contact me!