Download presentation
Presentation is loading. Please wait.
Published byRudolf Eaton Modified over 9 years ago
1
1 Welcome Jeff Edmonds York University Lecture 0 COSC 2011 Jeff Edmonds www.cse.yorku.ca\~jeff\courses\2011 jeff@cse.yorku.ca CSB 3044, ext. 33295 416-538-7413
2
2 Steps, Assignments, Practice Tests, Unit Tests, Exam Slides Videos (Remind me) Extra Text: Cormen, Leiserson, Rivest, and Stein "Introductin to Algorithms", Good to have, but not needed for this course. Course Material Text
3
3 Course Material www.cse.yorku.ca\~jeff\courses\2001\syllabus
4
4 What do you think about 3101? Hey Jeff, Never thought I would say this but I missed you a little bit. I was able to solve some interesting business programming problems - all by myself by just thinking back to the course. The main thing I got out of the course is belief in higher self and the ability to relax. If taken professionally, you weren't kidding that the course would be helpful for us in life and not just academically.
5
5 It deeply saddens me when a third of the class does not learn the material sufficiently to pass. I will do everything in my power to help you learn this material. I request that you do everything in your power. A Contract to Learn Everyone can learn it.
6
6 The last few terms I threatened them every day. They performed better than ever before! And my course evaluations were better. Tough Love
7
7 Think about Algorithms Abstractly Devastated by the midterm Change your thinking now. This course requires completely changing the way you think about algorithms. Though I keep warning people, they tend not to get it until they are
8
8 Don’t just work on coding assignments! Study Now! Study the material deeply before you fail the midterm.
9
9 We will work you HARD: 4 Assignments Midterm Exam Participation Mark = Marks 50% 54% 2% 10% Σ i=1..5 0.05 T i + 0.20 M + 0.50 E + 0.02 P + 0.08 Max(M,E,P) 4%*5 = 20% 20% 24%
10
10 In 3101, I have 5 unit tests: Each unit test, half the class fails. “Fail early, fail often” Then almost everyone starts to listen and passes the exam. But we need the TAs to mark the assignments . Marks
11
11 Four coding assignments (in Java) Start them early! Talk to each other Don’t copy Do assignments in pairs. Marks
12
12 Class Participation: Asking/Answering questions in class Attending office hours Talking to me outside of class Submitting a photo * Worth 2% if you don’t need it and 10% if you do. Marks
13
13 I think it is important for people to not feel isolated with the material. Together
14
14 You’re cool! Are you free sometime this weekend? Yes! The best way to learn is to teach each other! Together
15
15 Some students feel too intimidated to talk to the professor. Actually, he is just a guy who has been doing this for a while. Together
16
16 Office hours: Before/after class tend to be the best time. Longer or private questions, when requested, can be taken back to my office, CSB 3044. Together
17
17 Pros Don’t have to take notes. Lower fear level that you will miss something. Flexible to miss a class or two if working, parenting, sick, … Read/watch ahead to be prepared for a good discussion. Read/watch after to review and as a reference. Together
18
18 Pros REALLY good students might feel they don’t have to come to class (some might be right). Cons Cocky students will think they don’t need to come class but are wrong. Lazy students will use them as an excuse to skip class and then never really get to them. Test every other week! Cant be delayed. Together
19
19 Please interact with me in class. Help me know what people are not understanding Slow down the slides (Though we do have a lot of material to cover) Together
20
20 Please ask questions! To keep the flow going Wiggly hand: relevant to current slide. Stationary hand: question about past material. Avoid getting off topic. Together
21
21 When I ask a question to the class. Please don’t shout out answers. So others can think. Together
22
22 In every class, there is one student I don’t like. The key when talking in class is Together Are you trying to help me and the class or win some compitition?
23
23 Winter 06, the average of one section was much higher than the average of the other. (I taught them both) My theory was that it was because a student, Gertruda, constantly asked great questions and everyone learned from them. Ask questions for everyone’s sake. Please ask questions! Together 10% of your mark is class participation!
24
24 What: Submit a photo on line Add a photo to your forum account If you would like a better rapport with your emails, please include a photo. Why: I am very bad with names. (Sorry) Emails and tests are effectively anonymous. Needed for 10% participation mark. You can see the class list. How: Submit - cp photo.jpg Smith_John.jpg - submit 2011 photos Smith_John.jpg (or line) Submit a Photo Together
25
25 I communicate to you via the Forum. You are also encouraged to talk to each other this way. To be sure that you know when something has been posted, it is important to subscribe to the course forum. Forum Be sure to subscribe to the course forum and not just to one of its topics Together
26
26 When you email me something I need to make a note about send me your cse account. That way I can put it in epost notes and you can see that I have made it. Together
27
27 So you want to be a computer scientist?
28
28 Is your goal to be a mundane programmer?
29
29 Or a great leader and thinker?
30
30 Original Thinking
31
31 Boss assigns task: –Given today’s prices of pork, grain, sawdust, … –Given constraints on what constitutes a hotdog. –Make the cheapest hotdog. Everyday industry asks these questions.
32
32 Um? Tell me what to code. With more sophisticated software engineering systems, the demand for mundane programmers will diminish. Your answer:
33
33 Your answer: I learned this great algorithm that will work. Soon all known algorithms will be available in libraries.
34
34 Your answer: I can develop a new algorithm for you. Great thinkers will always be needed.
35
35 Course Content A list of algorithms (mostly for data structures) –Learn their code. –Trace them until you are convinced that they work. –Implement them. –Worry about details. class InsertionSortAlgorithm extends SortAlgorithm { void sort(int a[]) throws Exception { for (int i = 1; i < a.length; i++) { int j = i; int B = a[i]; while ((j > 0) && (a[j-1] > B)) { a[j] = a[j-1]; j--; } a[j] = B; }} Sorry
36
36 Course Content An intro to: Algorithmic design techniques. Abstract thinking. How to develop new algorithms for any problem that may arise.
37
37 Study: Many experienced programmers were asked to code up binary search.
38
38 Study: Many experienced programmers were asked to code up binary search. 80% got it wrong Good thing is was not for a nuclear power plant.
39
39 What did they lack?
40
40 What did they lack? Formal proof methods?
41
41 What did they lack? Formal proof methods? Yes, likely Industry is starting to realize that formal methods are important. But even without formal methods …. ?
42
42 What did they lack? Fundamental understanding of the algorithmic design techniques. Abstract thinking.
43
43 Some Math Recurrence Relations T(n) = a T(n/b) + f(n) Input Size Time Classifying Functions f(i) = n (n) Adding Made Easy ∑ i=1 f(i). Time Complexity t(n) = (n 2 ) Logic Quantifiers g b Loves(b,g) b g Loves(b,g) Logs and Exps 2 a × 2 b = 2 a+b 2 log n = n
44
44 Iterative Algorithms Loop Invariants i-1 i i i 0 T+1 codeA loop exit when codeB codeC 9 km 5 km CodeRelay Race One step at a time
45
45 Recursive Algorithms ? ?
46
46 Graph Search Algorithms
47
47 End
48
48 Together
49
49 Read Ahead You are expected to read the lecture notes before the lecture. This will facilitate more productive discussion during class. Like in an English class Also please proof read assignments & tests.
50
50 Explaining We are going to test you on your ability to explain the material. Hence, the best way of studying is to explain the material over and over again out loud to yourself, to each other, and to your stuffed bear.
51
51 Day Dream Mathematics is not all linear thinking. Allow the essence of the material to seep into your subconscious Pursue ideas that percolate up and flashes of inspiration that appear. While going along with your day
52
52 Be Creative Ask questions. Why is it done this way and not that way?
53
53 Guesses and Counter Examples Guess at potential algorithms for solving a problem. Look for input instances for which your algorithm gives the wrong answer. Treat it as a game between these two players.
54
54 Refinement: The best solution comes from a process of repeatedly refining and inventing alternative solutions Rudich www.discretemath.com
55
55 This term we will provide two hours a week of contact hours with the TA. Together Ask me anything! Class material Help YOU solve the assignment questions. Material missed from previous courses Your love life
56
56 This term we will provide two hours a week of contact hours with the TA. Yes! I will be sure to attend. Together We can have Practice Tests Lectures One-on-one time Group discussions
57
57 I will take attendance! This will effect your participation mark! Yes! I will be sure to attend. Together
58
58 Sorry! I will not have time to mark the assignments. This might be better anyway. Together But we can I read your solution together during the TA hours.
59
59 Lets schedule the office hours now. Together
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.