Eating a baby habanero
1:37
Жыл бұрын
Resume vs. CV Workshop
32:36
Жыл бұрын
The Academic Career Path
1:01:51
Жыл бұрын
Academia vs. Industry Panel
58:33
Жыл бұрын
Пікірлер
@mitenmehta79
@mitenmehta79 3 сағат бұрын
may use some concrete example like n = 1million and FP<1% and showing math will be helpful.
@Worse_than_you_can_imagine
@Worse_than_you_can_imagine 6 күн бұрын
PRISM and CIA in one video? Next you're going to tell me MLK wasn't assassinated by the FBI, the CIA didn't introduce crack to the inner city, and 9/11 was a surprise. How much dark money is an evolutionary biologist taking to promote The Pentagon's agenda? Get vaccinated. 🤭
@soumyajitchatterjee5822
@soumyajitchatterjee5822 9 күн бұрын
Beautiful
@linnaeusbundalian9290
@linnaeusbundalian9290 12 күн бұрын
Hello. I cannot access the file (lecture slides)
@niemasd
@niemasd 11 күн бұрын
Woops, thank you for catching that! I archived a lot of my teaching-related files from past quarters, and I forgot that the lecture slides for this course were being linked in the KZbin descriptions. I am away from my computer at the moment, but I'll repost them soon, and I'll follow up in another reply to this comment when I do
@niemasd
@niemasd 10 күн бұрын
Okay, I just updated the links to all of the lecture slides in this playlist, so it should work now! Please feel free to comment again on any of them if the link seems broken. Thanks again for catching this 🙂
@linnaeusbundalian9290
@linnaeusbundalian9290 10 күн бұрын
@@niemasd thanks a lot for sharing
@mlemImlem
@mlemImlem 26 күн бұрын
very good explanation thank you for teaching this
@InsocialDev
@InsocialDev Ай бұрын
Abstract data type is basically the abstraction of data structure at the user-level ( high-end programming)
@niemasd
@niemasd Ай бұрын
@@InsocialDev Essentially! I would personally slightly adjust it and say that an Abstract Data Type is an abstraction of a container, and that we can use Data Structures to *implement* ADTs. In other words, I would start with the abstract (the ADT essentially just defines what operations *should exist*, without any details about how they work or how fast they are), and then transition to the concrete (the Data Structure then defines *how* the operations will work, and as a result, how fast they will be). But both ways of thinking are essentially equivalent 😄
@InsocialDev
@InsocialDev Ай бұрын
@@niemasd Thanks for the correction🥰
@niemasd
@niemasd Ай бұрын
@@InsocialDev Thank you for watching the video! 😄
@ilioscio
@ilioscio Ай бұрын
This is just what I was looking for, thanks for the information
@dmytroboiko1
@dmytroboiko1 2 ай бұрын
This is super useful, thanks!
@MadpolygonDEV
@MadpolygonDEV 2 ай бұрын
I wish it included an example in the end where you showed how we could find point within a threshold, as in find the closest points to a target etc. great video though
@onescYT
@onescYT 2 ай бұрын
Wow
@dkkogmaw1311
@dkkogmaw1311 2 ай бұрын
but this approach leading to cache misses if we use linked lists for collisions or am I wrong?
@niemasd
@niemasd 2 ай бұрын
Great insight! Yes, in practice, it is common to use an array-based structure (e.g. an Array List) as the separation chain, but it's ultimately up to the implementation
@ArshamMikaeili-xy1td
@ArshamMikaeili-xy1td 2 ай бұрын
Great talk! Special thank to Neima and Dr. Carter.
@ranasameh2086
@ranasameh2086 2 ай бұрын
thanks ❤
@channelname9468
@channelname9468 2 ай бұрын
why talk about linear probing in a video about double hashing
@48_subhambanerjee22
@48_subhambanerjee22 2 ай бұрын
LOVE FROM INDIA ❤❤
@amyyy43
@amyyy43 3 ай бұрын
very underrated video!
@warguy6474
@warguy6474 3 ай бұрын
dayum prof niema the goat even back then, time to get back to study for cse100 final 🐐🐐🐐🐐🐐
@niemasd
@niemasd 3 ай бұрын
LOL I've been super into console hacking since middle school! Been doing this a loooong time 😂 Good luck with the final!!
@sonofgod00
@sonofgod00 3 ай бұрын
But i am still trying to understand the time complexity
@sonofgod00
@sonofgod00 3 ай бұрын
Thanks for making DFS BFS simple
@SINDRASENAGOWDU
@SINDRASENAGOWDU 3 ай бұрын
i cant understand the hard example ..please explain
@Xn_Fdez
@Xn_Fdez 3 ай бұрын
Gracias por el video máquina! Muy buena explicación.
@SirajahamedDharmayath
@SirajahamedDharmayath 3 ай бұрын
What happens if the keys are in ascending order and priorities are in descending order? Won't the treap become skewed and lose the balanced property? How is this handled?
@niemasd
@niemasd 3 ай бұрын
Yes, that is the worst case scenario for a Treap (keys and priorities are both sorted), which results in O(n) time complexity just like the BST worst case. You'll how Treaps are useful (and how this worst case scenario becomes unlikely in practical uses) in the Randomized Search Tree video
@zuowang5185
@zuowang5185 3 ай бұрын
and you didn't finish the video? just left with a not optimal solution
@niemasd
@niemasd 3 ай бұрын
It continues in the next video in the playlist... kzbin.info/aero/PLM_KIlU0WoXmkV4QB1Dg8PtJaHTdWHwRS&si=ZZkCLwbNvCIhDwdF
@jy6960
@jy6960 3 ай бұрын
nice
@skiller179
@skiller179 4 ай бұрын
u the best
@dzungdoan6774
@dzungdoan6774 4 ай бұрын
in case 2 if I insert a new node to a black parent it violates the depth. will it still considered case 2 or not?
@niemasd
@niemasd 4 ай бұрын
I'm not sure I understand your question; can you clarify? New nodes are inserted as red nodes, so if the new red node has a black parent, no need to do anything: it's already valid
@nottofind
@nottofind 5 ай бұрын
What is the DOI of the original Burrows Wheeler Transformation Paper? I can't find it :/ Great explanation though!
@niemasd
@niemasd 5 ай бұрын
Great question! BWT was originally not intended for this task (it was originally intended for data compression), and the original BWT paper can be found here: www.eecs.harvard.edu/~michaelm/CS222/burrows-wheeler.pdf *To my knowledge*, this is the first paper that applies BWT to the "match a bunch of short strings to a single long string" problem in Bioinformatics: doi.org/10.1186%2Fgb-2009-10-3-r25 Also, *to my knowledge*, this is the first paper that applies BWT to genomic data: doi.org/10.1089/cmb.2005.12.943
@MathComputerScienceTradi-ge7tw
@MathComputerScienceTradi-ge7tw 5 ай бұрын
But how to implement in code
@yesyas5972
@yesyas5972 5 ай бұрын
All clear, thanks
@traindeluxe3789
@traindeluxe3789 5 ай бұрын
Great explanation. what tool do you use to draw and how do you send the output to main screen?
@niemasd
@niemasd 5 ай бұрын
Thank you! I wrote a guide about my workflow here (I use a Paint-like drawing tool, and I use OBS to capture the drawing canvas): github.com/niemasd/teaching/blob/master/Tutorials/VideosKhanAcademy.md
@thaidoan868
@thaidoan868 5 ай бұрын
God bless you
@MahmoudBacha.r.s_personal
@MahmoudBacha.r.s_personal 5 ай бұрын
clear and useful , thanks
@mr.rabbit5642
@mr.rabbit5642 5 ай бұрын
Ok but how does that sequence help us with actual matching of the query strings? How much better is "can we do better than log?"?
@RLLLx
@RLLLx 5 ай бұрын
This is impressive! How do people come up with this kind of algorithm?!
@onescYT
@onescYT 2 ай бұрын
right? we are standing on the shoulders of giants
@williamhogrider4136
@williamhogrider4136 6 ай бұрын
Thank you
@sutibn
@sutibn 6 ай бұрын
Very cool!
@Mr_Rough
@Mr_Rough 6 ай бұрын
Finally found somebody explaining the difference between them ....... clearly. Thank you Mr. Niema Moshiri 👍👍💕💕🌹🌹
@danielnzuma9070
@danielnzuma9070 6 ай бұрын
Take home Not all Red black trees are AVL trees
@niemasd
@niemasd 6 ай бұрын
Precisely! Red-Black Trees are still guaranteed to have O(log n) height in the worst case, but they don't necessarily maintain the balance factor requirements that an AVL Tree does
@alex_lamarche
@alex_lamarche 7 ай бұрын
Incredibly concise!
@dennissavchenko
@dennissavchenko 7 ай бұрын
How to prove that 2N(h-2) >= 2^(h/2)?
@niemasd
@niemasd 7 ай бұрын
I prove it in the "Notes/Corrections" in the video description
@frogman7345
@frogman7345 7 ай бұрын
Thank you couldn't Uni without it
@suzyho7322
@suzyho7322 7 ай бұрын
thanks
@jonsentio3150
@jonsentio3150 7 ай бұрын
the complexity of BFS comes from the traversal itself (O(V+E)), you are misleading for that!
@niemasd
@niemasd 7 ай бұрын
The traversal itself is not O(V + E). Imagine you have a complete graph with V-1 nodes (so (V-1)(V-2)/2 edges), and you have a single additional node on its own unattached. BFS starting at that single additional node will finish instantly because it has no outgoing edges. BFS traversal starting from a single vertex is bounded by the edges you are able to traverse, not the number of vertices (there are many vertices you may possibly never be able to encounter if there are no edges connecting to them). The O(V) term comes from initialization (or if you chose to perform repeated BFS traversals to force yourself to explore the whole graph). A single BFS traversal starting from a single node is O(E)
@niemasd
@niemasd 7 ай бұрын
Oh, just realized which video this is in response to LOL so not sure if it was just a meme comment 😂 But figured I'd respond just in case!
@peggyw5628
@peggyw5628 7 ай бұрын
Thank you !👍🏻
@tino_
@tino_ 8 ай бұрын
Thank you so much :)
@shahrozsaleem3471
@shahrozsaleem3471 8 ай бұрын
How will this automaton help in the following scenario? I have keywords to search are: - GATEWAYS - ATE I want to search them in the following text: “The gateway is long” Here when we will be at vertex from an edge ‘y’ then we will not have any child so we will go through failure link to root. But during this we missed that ATE existed.
@niemasd
@niemasd 8 ай бұрын
Excellent question! This is actually described in the next video of the series. Specifically, we will be able to catch those cases via "dictionary links": kzbin.info/www/bejne/hXeuqYp8mtySgpI
@alexandersmirnov4274
@alexandersmirnov4274 8 ай бұрын
why not using prefix array instead?
@niemasd
@niemasd 8 ай бұрын
You could use a prefix array as well! We're looking for occurrences of the short string as a substring of the long stream, and using a suffix array exploits the fact that, if a string x appears as a substring of string y, then there must exist a suffix of y that begins with x. If we were to use a prefix array instead, we would exploit the fact that, if a string x appears as a substring of string y, then there must exist a prefix of y that *ends* with x. In other words, we would essentially do our binary search backwards. Another way to think about it is that using a prefix array would be equivalent to reversing the long string and the short strings and using a suffix array
@thoracicformula
@thoracicformula 8 ай бұрын
I needed somewhere to learn bioinformatics aside from my lab so I'll start here
@lolaandrada2841
@lolaandrada2841 9 ай бұрын
GREAT EXPLANATION THANK YOU SO MUCH
@kritikaleet0049
@kritikaleet0049 9 ай бұрын
Thanku sir