1. Course Overview, Interval Scheduling

  Рет қаралды 589,040

MIT OpenCourseWare

MIT OpenCourseWare

8 жыл бұрын

MIT 6.046J Design and Analysis of Algorithms, Spring 2015
View the complete course: ocw.mit.edu/6-046JS15
Instructor: Srinivas Devadas
In this lecture, Professor Devadas gives an overview of the course and introduces an algorithm for optimal interval scheduling.
License: Creative Commons BY-NC-SA
More information at ocw.mit.edu/terms
More courses at ocw.mit.edu

Пікірлер: 141
@alexisglennespina8471
@alexisglennespina8471 8 жыл бұрын
Thanks MIT for providing an updated version of your algorithms class. You are truly awesome. You continue to inspire me to learn more.
@neuron8186
@neuron8186 3 жыл бұрын
what do you mean by updated version
@ru2979
@ru2979 Жыл бұрын
@@neuron8186 hey u , why u mocking him
@siyuanliu4581
@siyuanliu4581 7 жыл бұрын
The video quality is truly amazing, and it keeps getting better and better. Thanks MIT, the professors and staffs behind the scene!
@SharatS
@SharatS 7 жыл бұрын
The MIT recommended order for watching this is 6.042J (Mathematics for Computer Science) , then 6.006 (Introduction to Algorithms) and finally 6.046J (Analysis and Design of Algorithms).
@Suborneer
@Suborneer 6 жыл бұрын
Sharat Sachin where did you find recommended order
@kwokpinglau2400
@kwokpinglau2400 5 жыл бұрын
Thx mate
@minh_tran
@minh_tran 4 жыл бұрын
Thank you so much!!!
@hujake5406
@hujake5406 4 жыл бұрын
Thank you!!!!!!!!!!!!!!! you just save my soul which fcked up by corona virus
@yeowzh
@yeowzh 4 жыл бұрын
Thanks mate. I was looking for this comment. Really helpful
@ozziekhoo
@ozziekhoo 3 жыл бұрын
Thanks whoever wrote up the subtitles, they really do help to ensure you don't miss out on anything.
@asadullahfarooqi254
@asadullahfarooqi254 7 жыл бұрын
thanks MIT i am a poor guy learned alot from you and when i got my future bright i will make donation as i can that time and i would be glad to do more then anyone
@SameerSk
@SameerSk 4 жыл бұрын
*_Very big thanks to MIT OCW for helping us with this beautiful course_*
@abhineet5834
@abhineet5834 6 жыл бұрын
Interval Scheduling starts at 17:30
@BABEENGINEER
@BABEENGINEER 4 жыл бұрын
THANK YOU
@sai4007
@sai4007 8 жыл бұрын
Thanks a lot for uploading this, Srini, Erik you rock on .. .
@stevewu9372
@stevewu9372 4 жыл бұрын
I love everything about MIT, I am very grateful and willing to donate!
@ShingHim
@ShingHim 6 жыл бұрын
Coming from the 2011 6.006 course, the cinematography for this lecture should win an Oscar! The multiple camera angles, the 1080p definition....I think I'm about to shed a tear But for real, great lecture! I'm looking forward to watching the rest of the series. You rock, MIT
@coolcodingtips4624
@coolcodingtips4624 7 жыл бұрын
Thanks a lot for MITOCW, it deeply help me to find the real knowledge. I think MITOCW really save me from the poverty and ignorance. THANK YOU MIT THANK YOU MITOCW
@waltermitty6446
@waltermitty6446 6 жыл бұрын
Thanks MIT for providing these amazing course!!!
@vexilligerave9356
@vexilligerave9356 7 жыл бұрын
A very good series. More contents from CLRS are covered compared to the previous 6046 and 6006 courses.
@nickmartinez4064
@nickmartinez4064 8 жыл бұрын
great reinforcement of my current undergrad algorithms class!
@ilyakopyl
@ilyakopyl 7 жыл бұрын
+1 I take the classes at my local university for credits, I watch these lectures for knowledge.
@shymaaarafat1342
@shymaaarafat1342 5 жыл бұрын
Here in Egypt, at least till the end of 2011 & to be accurate in the places I teached in CE/CS, We take most of these topics 6.042 ,6.006, 6.046 between Data structures course (2nd yr) & algorithm design & analysis (3rd yr), usually we start with parts from knuth "Sorting & Searching" , then a variety of books on Algorithms (I recall Sartaj Sahni as one of them) , then a part from Sara Base "The Hardest Problems" -We probably end data Structures on B-trees, B+ trees, -Also, we don't use python, we write Pseudo code in lectures (like 5503 course lectures), and the labs use the main programming language these students study for implementation to emphasize more on it(u see sometimes some colleges prefer to concentrate on implementation and programming skills in the Data Structures course) -Probabilistic algorithms is a post graduate course -We address Cryptography in completely different course (Security from Stallings) -I took FFT very very long time ago as an undergraduate in a half semester Digital Signal Processing course yes connected to Algorithms, I never teached it but I know it is taught in different courses
@darianharrison4836
@darianharrison4836 6 жыл бұрын
Thank you MIT for this opencourse, it is very good
@srinidevadas9965
@srinidevadas9965 6 жыл бұрын
Those of you interested in algorithmic puzzles, check out my new book "Programming for the Puzzled" mitpress.mit.edu/books/programming-puzzled www.amazon.com/dp/0262534304/
@SiddharthaJoshi
@SiddharthaJoshi 7 жыл бұрын
Weighted Interval Scheduling starts at 1:02:15 Thank you MIT OCW, and thank you Prof. Devadas.
@adityasinghaswal4923
@adityasinghaswal4923 7 жыл бұрын
thanks bhai :)
@DeedeeM3gaDooDoo
@DeedeeM3gaDooDoo 8 жыл бұрын
you guys are awesome thanks
@ameslouis4264
@ameslouis4264 8 жыл бұрын
Thanks you very much, It helps me a lot.
@memoriasIT
@memoriasIT 5 жыл бұрын
Thanks for providing information for free
@livingwithlinlin3122
@livingwithlinlin3122 3 жыл бұрын
Wonderful content. I love the course, the professor and your sharing the knowledge with the world for free. Interval Scheduling: 17:30, Greedy Algorithm: 25:50, Greedy Interval Scheduling: 27:30, Prove: 42:50
@Marc-lh7te
@Marc-lh7te 3 жыл бұрын
Just finished 6.006, I am here to devour 6.046J
@hannahbansal4572
@hannahbansal4572 4 жыл бұрын
professor devdas is no doubt an excellent professor but the thing that makes him even better is how similar his voice and articulation is to RICK SANCHEZ!!
@ndmath
@ndmath 6 жыл бұрын
Bless MIT.
@yue7987
@yue7987 7 жыл бұрын
Thank You!
@nickwhite8238
@nickwhite8238 7 жыл бұрын
Course begins at 4:35.
@sudheerays9559
@sudheerays9559 5 жыл бұрын
thanks
@rj-nj3uk
@rj-nj3uk 5 жыл бұрын
Thanks
@BABEENGINEER
@BABEENGINEER 4 жыл бұрын
THANK YOU DOOD
@SergeyLeschinsky
@SergeyLeschinsky 3 жыл бұрын
From 480p to 1080p! Wow! Possible it's a good time to upload 4k version of 6.006
@codethings271
@codethings271 7 жыл бұрын
im loving it :)
@hanfuzhao805
@hanfuzhao805 5 жыл бұрын
hi where can i find the corresponding reading assignment for the course?
@random-characters4162
@random-characters4162 Жыл бұрын
I love how we have literally thousands of years of teaching tradition and we still cannot afford ourself a desk that is easy to clean
@cbskwkdnslwhanznamdm2849
@cbskwkdnslwhanznamdm2849 5 ай бұрын
And chalk
@jakeroosenbloom
@jakeroosenbloom 4 жыл бұрын
9:25 Lectures starts here.
@WhateverYouLove
@WhateverYouLove 7 жыл бұрын
God, I love their big-ass chalks.
@rj-nj3uk
@rj-nj3uk 5 жыл бұрын
Good!! Human.
@hektor6766
@hektor6766 5 жыл бұрын
It'scalled railroad chalk, similar to sidewalk art chalk, usually used for construction and insurance claim investigation.
@SmokingNoir
@SmokingNoir 6 ай бұрын
Thank you MIT for uploading. I might just pass my coding test and get a job thanks to you. Maybe...
@hansu7474
@hansu7474 5 жыл бұрын
I hope I can learn this within a year after I satisfy prerequisites. I will be back!
@liangyuliu3648
@liangyuliu3648 4 жыл бұрын
Soooooooo Awesome!!!
@Gokulbhusal-oj3fy
@Gokulbhusal-oj3fy 4 жыл бұрын
Thk you sir
@seblewongelashenafi3417
@seblewongelashenafi3417 6 жыл бұрын
You are helpfull !!!!
@jamest2736
@jamest2736 3 жыл бұрын
Are there any plans of making an edX version of this course? (also for 6.006)
@GoogleUser-ee8ro
@GoogleUser-ee8ro 5 жыл бұрын
Why can greedy algorithm solve the interval scheduling problem? Is there any limitation to the type of problems greedy can solve? And how to develop an intuition to guess the best strategy, such as the earliest finish time? on the first sight, the minimum conflict strategy totally makes sense, although one counter example proves its invalid. My other guess is to a strategy which concurrently picks smallest tasks and minimizes time waste (intervals between tasks) .
@devgumdrop3700
@devgumdrop3700 3 ай бұрын
Interesting proof. Essentially, the induction step is possible because can be swapped into any optimal solution, and we know there exists a k+1 sized optimal solution in which the last k elements can be found using the greedy algorithm, as k is the maximum amount of intervals that fit in the rest of any k+1 sized optimal solution alongside . (By assumption, the greedy algorithm can find a solution when the maximum size is k). So, as the greedy algorithm always finds , and it always finds the next k intervals when it's possible too, then the greedy algorithm can find a k+1 sized optimal solution, hence the greedy algorithm works.
@BipinOli90
@BipinOli90 7 жыл бұрын
How about compiling the contents into small quick videos where absolutely necessary things are covered just like those math videos of Gilbert Strang. It will be a great help as a quick refresher. PS: Great Thanks to MIT for this new and updated HD course
@sonurony5171
@sonurony5171 5 жыл бұрын
Can someone tell me what are the prerequisites for this course. ps. I know c and cpp fairly well
@mitocw
@mitocw 5 жыл бұрын
The prerequisites are: 6.006 Introduction to Algorithms, 6.042J / 18.062J Mathematics for Computer Science. See the course on MIT OpenCourseWare for more information at: ocw.mit.edu/6-046JS15. Best wishes on your studies!
@ns4k_tv
@ns4k_tv 5 жыл бұрын
I didn't understand a thing, any class that i should watch before this? can someone help me with links?
@MrEternalFool
@MrEternalFool 8 жыл бұрын
I want a frisbee.
@TheGerakas
@TheGerakas 4 жыл бұрын
It costs $250K (I had the same thought)
@xpwasteeldevin
@xpwasteeldevin 7 жыл бұрын
I was looking at 6.006 and 6.046j....can anyone please tell in which course do they teach about asymptotic notaions, how to calculate them?? Even in 6.006 they assume students know how to find it.
@himanshumundhra1256
@himanshumundhra1256 7 жыл бұрын
6.042J
@Alice_Dawn23
@Alice_Dawn23 Жыл бұрын
prove of choosing ealiest finish time: 42:48
@17teacmrocks
@17teacmrocks 3 жыл бұрын
i think i'm in the wrong course lol. I was looking for the newest one but the intro one must be 6.006
@harryhoang7734
@harryhoang7734 7 жыл бұрын
Anyone can tell me which section in the course textbook assigned with each video lecture?
@mitocw
@mitocw 7 жыл бұрын
Sorry, there doesn't appear to be a Readings section, but the Calendar lists the topics and the required textbook. ocw.mit.edu/6-046JS15.
@ravitheja012345
@ravitheja012345 7 жыл бұрын
Study from Introduction to Algorithms by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein
@jerrys5387
@jerrys5387 4 жыл бұрын
Hi guys, which version is better to watch this one or the 2011’s?
@silveriofex
@silveriofex 4 жыл бұрын
I was wondering this too, I love the 2011 first chapters
@coding99
@coding99 3 жыл бұрын
resolutions really tells the time between 6.006 and 6.046...!
@sushantrocks
@sushantrocks 2 жыл бұрын
I don't why but i intently started listening to the logistics as well 😂😂.
@forheuristiclifeksh7836
@forheuristiclifeksh7836 2 ай бұрын
14:41 deyrrmining graph if it is hamiltonian cycle is difficult
@saranshthakur9999
@saranshthakur9999 3 жыл бұрын
Hello Sir, I want to learn data structure and algorithm and as I don't have any knowledge about coding or about data structure & algorithm. I have to start from beginning .So ,this course is suitable for me or I need to have any background knowledge.
@mitocw
@mitocw 3 жыл бұрын
Prerequisites: 6.006 Introduction to Algorithms 6.042J / 18.062J Mathematics for Computer Science See the course on MIT OpenCourseWare for more info at: ocw.mit.edu/6-046JS15. Best wishes on your studies!
@akshaymathur2225
@akshaymathur2225 6 жыл бұрын
Why are so many people leaving ?
@adiigeak8568
@adiigeak8568 4 жыл бұрын
Not able to get the third example of incompatibility in 37:55
@sushantkumar4917
@sushantkumar4917 2 жыл бұрын
23:46 I really hoped he pick that duster there 😳
@isbestlizard
@isbestlizard 3 жыл бұрын
HI! I'm from 006! :D
@ashijoshi7982
@ashijoshi7982 3 жыл бұрын
I didn't understand why k* should be maximum?
@chinmaydas4053
@chinmaydas4053 6 жыл бұрын
Sir, what is the best programming language to understand, implement the data structures and algorithms, analyse and design algorithms.. c/c++/java/c#/python etc???.. please sir answer me.. it will be very helpful.. eagerly waiting for your valuable answer..
@srinidevadas9965
@srinidevadas9965 6 жыл бұрын
I would start with Python. Good luck!
@chinmaydas4053
@chinmaydas4053 6 жыл бұрын
Thank you sir for your reply.. Sir what's the best video resources for learning python in depth.. Please answer me sir..
@srinidevadas9965
@srinidevadas9965 6 жыл бұрын
ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-0001-introduction-to-computer-science-and-programming-in-python-fall-2016/ ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-s095-programming-for-the-puzzled-january-iap-2018/index.htm?OCWCourseList&CarouselSm&FeaturedCourse
@chinmaydas4053
@chinmaydas4053 6 жыл бұрын
Thank you sooo much sir.. Lots of love and respect for your Sir from India 🙏🙏🙏..
@hektor6766
@hektor6766 5 жыл бұрын
@@srinidevadas9965 Glad I have the opportunity to say to you directly that you are a great prof.
@holdenmcgroin8917
@holdenmcgroin8917 3 жыл бұрын
The show starts at 17:39
@FelipeCampelo0
@FelipeCampelo0 5 ай бұрын
What is a request actually?
@theaveragecoder6182
@theaveragecoder6182 4 жыл бұрын
Oops , there goes the duster 23:47 .
@bavidlynx3409
@bavidlynx3409 3 жыл бұрын
is this course updated?
@mitocw
@mitocw 3 жыл бұрын
There is an update: ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-046j-design-and-analysis-of-algorithms-spring-2012/. Best wishes on your studies!
@user-zp3nd6ht8v
@user-zp3nd6ht8v 6 жыл бұрын
everyone buy the proof? not me.
@SJ23982398
@SJ23982398 8 жыл бұрын
What level of math do I need for this? 10 min in some of it sounds like chinese already.
@mitocw
@mitocw 8 жыл бұрын
+ijw z The prerequisites for this course are: 6.006 Introduction to Algorithms (ocw.mit.edu/6-006F11) and 6.042J / 18.062J Mathematics for Computer Science (ocw.mit.edu/6-042JF10).
@mitocw
@mitocw 8 жыл бұрын
+ijw z The prerequisites for this course are: 6.006 Introduction to Algorithms and 6.042J / 18.062J Mathematics for Computer Science. See the course on MIT OpenCourseWare for more information at ocw.mit.edu/6-046JS15
@Rooot-username
@Rooot-username 7 жыл бұрын
lol
@ilyakopyl
@ilyakopyl 7 жыл бұрын
Thank you! Would you recommend taking 6.041 Probabilistic Systems Analysis and Applied Probability as well?
@HarshitSharma-kk6yz
@HarshitSharma-kk6yz 3 жыл бұрын
@@ilyakopyl yes
@pablonapan4698
@pablonapan4698 7 жыл бұрын
This a grad course?
@mitocw
@mitocw 7 жыл бұрын
This is an undergraduate course. See the course on MIT OpenCourseWare for more details at ocw.mit.edu/6-046JS15.
@Mumbaicarmeet
@Mumbaicarmeet Жыл бұрын
is this thing is worth watching in 2023. Things are still same or updated?
@mitocw
@mitocw Жыл бұрын
This class is still worth watching in 2023. These topics are the same now as they were back then. Best wishes on your studies!
@Mayank93000
@Mayank93000 9 ай бұрын
@@mitocw that's I'm searching about
@tfluan0606
@tfluan0606 2 жыл бұрын
after 4 years they really make Frisbee instead of cushion
@ahokai
@ahokai 8 жыл бұрын
finally :D
@anythingstudio5208
@anythingstudio5208 Жыл бұрын
Interval Scheduling: 17:30 Greedy Algorithm: 25:50 Greedy Interval Scheduling: 27:30 Prove: 42:50
@hamids4550
@hamids4550 4 жыл бұрын
what is the prerequisite to this course? I don't understand most of it
@rahulpujari9607
@rahulpujari9607 4 жыл бұрын
6.006 He says it himself at 1:17 if you were paying attention
@user-mv4oh8yp1y
@user-mv4oh8yp1y 6 жыл бұрын
18109:1532
@o.y.930
@o.y.930 3 жыл бұрын
I don't get 1:19:41. If recursive calls are O(1) then shouldn't the complexity be n? Why is it n^2, can somebody explain?
@mytennisjourney4949
@mytennisjourney4949 3 жыл бұрын
The O(n) here is that we need to compare n sub problem to get max value, which means we need call n times to solve sub problems, as you said, the recursive call are constant, so a subproblem complexity is N* O(1) = O(N). And there has N subproblems, so N * O(N) = O(N^2)
@WeirdAlSuperFan
@WeirdAlSuperFan Жыл бұрын
I don't understand why there are n subproblems. If we're taking the max over n things, that's O(n), but Srini said that just solves a single subproblem. Can someone give an concrete example of two different subproblems here, and why we need to calculate them? It seems to me that Srini is saying we need to calculate something else after we find that max in order to really solve the problem, but he didn't write it out anywhere and it's not in CLRS :(
@devgumdrop3700
@devgumdrop3700 3 ай бұрын
@@WeirdAlSuperFan All of the subproblems correspond to an interval in the set, and are the problem of finding the max weight of intervals that fit after that interval. For the interval with the latest finishing time, it's not actually going to have a deep subproblem, as there are no later intervals, so solving that subproblem is going to be O(1). For the interval that has the 2nd latest finishing time, the subproblem consists of a choice between including the last interval or not. It's also O(1) to do this check. If we consider the third latest interval though, we can begin to see a pattern. The third latest subproblem now consists of a checking three options, either having no later intervals included, or having the solution for the second latest interval included or having the solution for the last interval included. Any check we need to do is an O(1) check thanks to memoisation, and we have to do 3 checks at most, although it's likely in this case that some of my phrased options are the same. As we continue this line of reasoning, we can see that each subproblem is O(n) because it can consist of up to n checks that are O(1) each (thanks to memoisation and the fact we are backtracking from the subproblem corresponding to the latest interval upto that subproblem). As there are n intervals, there are n subproblems hence O(n^2)
@junweima
@junweima 6 жыл бұрын
I would get all the frisbees if I'm in the class
@stabgan
@stabgan 5 жыл бұрын
great
@trentonfeda7350
@trentonfeda7350 5 жыл бұрын
23:45 poor eraser :(
@merr5593
@merr5593 6 жыл бұрын
That Asian on 3:55
@merlingrim2843
@merlingrim2843 2 жыл бұрын
Why do lecturers not use presentation slides and digital white boards? While I do appreciate the OCW initiative, it seems really odd to me the MIT fails to innovate or even adopt solutions which would improve efficacy.
@jordanozang3317
@jordanozang3317 Жыл бұрын
Maybe I'm not as smart as you, but I know that this mode of presentation keeps me at about full mental capacity. Something faster would just leave me far behind. If I wanted information to be densely packed, I wouldn't be watching a lecture anyways. I'd read the corresponding chapter in the CLRS book. Again, that's just me.
@merlingrim2843
@merlingrim2843 9 ай бұрын
@@joeyfalcone3990 Hmmm, I don’t see how this modality adds value or efficacy.
@jiaweixue6396
@jiaweixue6396 2 жыл бұрын
Greedy proof starts from 43:00
@sahilshah9047
@sahilshah9047 11 ай бұрын
whatttt , its out of my league ...
@JoffreyB
@JoffreyB 4 жыл бұрын
Does this guy for real using paper notes to write P and NP definitions on a board?
@navjotsingh2251
@navjotsingh2251 4 жыл бұрын
Well they have to cover a lot of topics in such a way that the students (who are most likely new to all of this) will undergrad, so it requires a lot of planning before hand.
@Poti221
@Poti221 4 жыл бұрын
Sleep Party 6.046
@IiiIiIIIiiiiiIiIII-nh9zx
@IiiIiIIIiiiiiIiIII-nh9zx 6 жыл бұрын
fhd? wow
@RiteshKumar-vd7rc
@RiteshKumar-vd7rc 4 жыл бұрын
Professor is indian. So i am feeling comfortable.
@rvrishav7
@rvrishav7 6 жыл бұрын
proud to be an indian..
2. Divide & Conquer: Convex Hull, Median Finding
1:20:35
MIT OpenCourseWare
Рет қаралды 195 М.
MIT Introduction to Deep Learning | 6.S191
1:09:58
Alexander Amini
Рет қаралды 292 М.
Каха ограбил банк
01:00
К-Media
Рет қаралды 9 МЛН
Её Старший Брат Настоящий Джентельмен ❤️
00:18
Глеб Рандалайнен
Рет қаралды 9 МЛН
FOOLED THE GUARD🤢
00:54
INO
Рет қаралды 61 МЛН
Interval Scheduling Maximization (Proof w/ Exchange Argument)
20:20
Back To Back SWE
Рет қаралды 60 М.
26. Chernobyl - How It Happened
54:24
MIT OpenCourseWare
Рет қаралды 2,8 МЛН
Lecture 1: Introduction to Superposition
1:16:07
MIT OpenCourseWare
Рет қаралды 7 МЛН
3. Divide & Conquer: FFT
1:20:52
MIT OpenCourseWare
Рет қаралды 308 М.
Necessity of complex numbers
7:39
MIT OpenCourseWare
Рет қаралды 2,5 МЛН
6. Monte Carlo Simulation
50:05
MIT OpenCourseWare
Рет қаралды 2 МЛН
Каха ограбил банк
01:00
К-Media
Рет қаралды 9 МЛН