Sparse Table Algorithm Range Minimum Query

Поділитися
Вставка
  • Опубліковано 24 сер 2024

КОМЕНТАРІ • 70

  • @sagarcs669
    @sagarcs669 7 років тому +60

    You should maybe stop asking for likes and shares. No one in their good sense will dislike this video. You truly understand the various phases of the algorithm one finds difficulty grasping and try to cover them in meticulous and illustrative examples. You deserve an award for being only one of the kind of UA-cam Channel that has a whole lot of algorithm explanation. Awesome Sir!

  • @Nikita-xk9fc
    @Nikita-xk9fc 5 років тому +9

    114k subscribers are very less for u.I haven't seen ny video with this level of explanation.superb xplanation

  • @jfcahoon
    @jfcahoon 8 років тому +4

    Just wanted to say thank you for all the work you've put into these videos and explanations. Your work has helped me immensely and I really appreciate it.

  • @nitinjain1325
    @nitinjain1325 6 років тому

    khatarnak tarike se dhulai karte hai aap algorithms ki...use chupne ki jagah nahi milti.... u r great sir ji

  • @ramakrishnachowdary3378
    @ramakrishnachowdary3378 8 місяців тому

    Wow , such a clean explanation , Thank You 💙

  • @user-mi5du2ez3b
    @user-mi5du2ez3b 2 місяці тому

    I love this, great work sir

  • @aayushbaniyal2124
    @aayushbaniyal2124 8 років тому +1

    thanks for the videos... they were really helpful ... just know that because of you many students didn't got supply in algorithm course

  • @vineetsharma7287
    @vineetsharma7287 3 роки тому

    Great Explanation! Your videos are helping dev community a lot.

  • @anhdungoan2679
    @anhdungoan2679 6 років тому +2

    This video is really useful, thank you very much, some people mistakenly thought the dislike button was a download button :D

  • @nguyenducvuanh48
    @nguyenducvuanh48 5 років тому

    Thank you sir! I would have given up on the problem without this video.

  • @madhav3444
    @madhav3444 3 роки тому

    Best explanation !

  • @serhiypidkuyko4206
    @serhiypidkuyko4206 5 років тому +1

    Hi Tushar.
    Thank you for your video.
    I think for your viewers would be useful to explain the main idea of the algorithm with a sparse table.
    And this is as following:
    any range-interval [u,v] to divide onto two intersecting intervals [u,u+2^k-1] and [v+1-2^k,v] of length 2^k
    these two intervals are intersecting because by choice: 2^k

  • @utuk123
    @utuk123 8 років тому

    Awesome video Tushar sir

  • @thesavagetrader3681
    @thesavagetrader3681 7 років тому

    Thanks sir for your great effort... very simple and easy explanation.

  • @imyashdeepsharma
    @imyashdeepsharma 8 років тому

    That was very good explanation , cleared some of my doubts ! Thanks Tushar Sir :)

  • @techstuff9830
    @techstuff9830 2 роки тому

    Great one!

  • @hope-jh7bv
    @hope-jh7bv 3 роки тому

    Thank you so much sir.

  • @dvnsravan
    @dvnsravan 8 років тому

    Thanks for the explanation Tushar!

  • @sarthakgaba1583
    @sarthakgaba1583 3 роки тому

    Superbly Amazing! Thanks mate :)

  • @abubakarismail5436
    @abubakarismail5436 Рік тому

    Weldone bruh Thanks

  • @pritommitchellrodrigues3724
    @pritommitchellrodrigues3724 4 роки тому

    Thanks bhai, finally understood how it works. :D

  • @shivamchauhan3562
    @shivamchauhan3562 4 роки тому

    Thank you. Very nice explanation.

  • @christy_yinyan8449
    @christy_yinyan8449 8 років тому +1

    Thank you so much! always the best!!!!

  • @s_cube8543
    @s_cube8543 4 роки тому

    Explanation of pseudo code at the end is what i love most in your videos.. literally it saved hours of my effort for understanding how this algos work.. and all these bcz u put days of effort into building this awesome videos. Such clean and clear explanations with examples. Thank you sooo much!! Hats off to you.
    Please keep uploading more. Also if possible put links to some problems related to this algos to practise. Thanks once again!

  • @sushmitagoswami2033
    @sushmitagoswami2033 Рік тому

    while doing the range query, why are we moving by k after we find the min in [query_L, K]? Since, we have already calculated for 2^k number of elements?

  • @Himanshu-ed3mf
    @Himanshu-ed3mf 3 роки тому +3

    Important point : if we have to find out sum of elements in range [L, R], then sparse table will give time complexity O(log N) not O(1)

  • @ShubhamJoshishubhamjoshi
    @ShubhamJoshishubhamjoshi 7 років тому +2

    Thanks a lot :D could you please add one of LCA By RMQ also.

  • @front-rud
    @front-rud Рік тому

    Thank you bro!

  • @AmanGarg95
    @AmanGarg95 8 років тому +1

    Hi Tushar. If we were to do point updates at an index, then we would update all those entries at which the index in picture might contribute as a minimum to, right? This would be O(N logN) for N such point update queries. Am I correct in saying this?

  • @AbhishekKumar-zz3ts
    @AbhishekKumar-zz3ts 8 років тому

    sweet and simple explanation , keep it up :D

  • @harshitgangwar1426
    @harshitgangwar1426 4 роки тому

    good explanation

  • @techgianttechyforever
    @techgianttechyforever 3 роки тому

    thanks a lot sir :)

  • @RomanReigns-ds8hs
    @RomanReigns-ds8hs 5 років тому

    thanks for the explanation.

  • @mayurkulkarni755
    @mayurkulkarni755 7 років тому +1

    The time complexity to query RMQ Sparse Table in your implementation is log*(n) (not to be confused with log(n), log*(n) is iterated logarithm) which can be reduced to O(1) by choosing 2 [L,R] values such that they cover all the nodes. Read this for more www.topcoder.com/community/data-science/data-science-tutorials/range-minimum-query-and-lowest-common-ancestor/#Lowest%20Common%20Ancestor%20(LCA)

  • @ravinapit1625
    @ravinapit1625 4 роки тому

    Nice explanation. But Plz use another marker

  • @RomanReigns-ds8hs
    @RomanReigns-ds8hs 5 років тому

    for range queries problems. which algorithm would be better?

  • @raj1307
    @raj1307 5 років тому

    great video sir :)

  • @ZiadxKabakibi
    @ZiadxKabakibi 8 років тому

    great as usual :D

  • @umangmalhotra1222
    @umangmalhotra1222 8 років тому

    Hi tushar! what is the logic behind putting index of minimum numbers in table , you could have directly put the minimum value direct in the table.
    BTW nice video as always.

  • @techgianttechyforever
    @techgianttechyforever 3 роки тому

    Is it only me who listen keyboard smashing sound when he write something on board

  • @mousatat7392
    @mousatat7392 7 років тому

    thank you very much

  • @syedashamimakter3231
    @syedashamimakter3231 3 роки тому

    cout

  • @uNabL3
    @uNabL3 6 років тому

    Thank you!

  • @immanuelsamuelgwu
    @immanuelsamuelgwu 2 роки тому

    Correct me If I'm wrong according to the sparse table being taught when i=4, j=0 in the first column, j will be 6 and i will be 7 and the min of both is 6 so the index of the 6 which is 1 should be returned right?

  • @yuunpeeto8293
    @yuunpeeto8293 7 років тому

    many thanks!

  • @raghuramkarra15
    @raghuramkarra15 8 років тому +1

    number of columns should be floor(log2(n))

    • @RomanReigns-ds8hs
      @RomanReigns-ds8hs 5 років тому

      why??

    • @ujjwalbansal1070
      @ujjwalbansal1070 4 роки тому

      @@RomanReigns-ds8hs cp-algorithms.com/data_structures/sparse-table.html Read the Intuition part of the above link

  • @sahilgarg750
    @sahilgarg750 8 років тому

    can we use sparse table for max min range query in a 2d array(matrix)?

  • @rajbansal787
    @rajbansal787 3 роки тому

    respect++

  • @somnathgiri3245
    @somnathgiri3245 6 років тому

    good

  • @vaibhavsharma8150
    @vaibhavsharma8150 7 років тому

    thanku sir

  • @rahulbhati3079
    @rahulbhati3079 4 роки тому

    can you upload some questions related to it

  • @bharatgulati8531
    @bharatgulati8531 5 років тому

    wanted to give a double like to the video. but alas youtube restricted me two just one like.

  • @Ashley_montz
    @Ashley_montz 5 років тому

    does anyone know which problem in leetcode this is ?

  • @samiulislamdurjoy
    @samiulislamdurjoy 2 роки тому

    G 17:23

  • @samprasdsouza6993
    @samprasdsouza6993 4 роки тому

    is this MO's algo ??

  • @sgulugulu19
    @sgulugulu19 6 років тому

    Wouldn't it be more helpful if we store the elements directly..rather than their index

    • @dhruvreshamwala511
      @dhruvreshamwala511 5 років тому

      Exactly what I was wondering

    • @dhruvreshamwala511
      @dhruvreshamwala511 5 років тому +4

      Okay.. Got it.. The application of RMQ demands the storage of indices.. Because, usually, the minimum value is not just "Needed", it can also be updated.

  • @yeeroj
    @yeeroj 4 роки тому +1

    Tushar bhai angrejo ki tarah English kyun bol rhe ho.....indian style English bol lo

  • @prudvim3513
    @prudvim3513 8 років тому +6

    Hi tushar, I think Segment tree takes O(n log(n)) space and time for pre processing. Not O(N)

    • @saikumark6327
      @saikumark6327 6 років тому

      the preprocessing time is o(nlogn)

    • @madankumarrajan1028
      @madankumarrajan1028 6 років тому +1

      This is O(N) just the same way a heap construction algorithm takes O(N).

    • @malharjajoo7393
      @malharjajoo7393 5 років тому

      @@madankumarrajan1028 Can you elaborate ? From my understanding, the heap construction algorithm time complexity is not very straight-forward to understand.
      Also, segment tree should be O(nlogn) according to me, since we use divide and conquer and then sum (in case of Range sum queries) the two child node values.

  • @ShubhamKumar-rt8nb
    @ShubhamKumar-rt8nb 4 роки тому +1

    first of all you should explain the logic or why we are doing something