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!
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?
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:
Know: I could do/use this right now with little trouble.
Refresh: I learned this before, but now I would need to go back and look at my notes and refresh my knowledge.
???? : I have not learned that.
Please select the most appropriate button in each case.
Big Oh notation:
Know
Refresh
????
Big Theta notation:
Worst-case run time complexity:
Storage size needs in terms of big Oh:
Performance analysis of code using big Oh:
Induction:
Sum arithmetic series:
Sum geometric series:
Matrix multiplication:
Combinations and permutations:
Stacks
Queues
Arraylists
Linked lists
Binary search trees
Hash tables
Hash sets
Two dimensional array
Use recursion
Hash functions
Red-black trees
AVL trees
Finite Graphs
Binary Search
Quicksort
Mergesort
Heapsort
Bucket or Radix sort
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!