L6. Job Sequencing Problem | Greedy Algorithm Playlist

แชร์
ฝัง
  • เผยแพร่เมื่อ 9 พ.ย. 2024

ความคิดเห็น • 72

  • @adarshmv261
    @adarshmv261 4 หลายเดือนก่อน +49

    Day 0 or Time 0 should not be considered... As per the prob in GFG !!!

  • @priyadarsimishra7909
    @priyadarsimishra7909 5 หลายเดือนก่อน +67

    There is a slight error in the code. The inner for loop should start from j = deadline (arr[I].dead) till j >= 1 not 0. Because otherwise we are adding arr[0] but there is no day 0 to do work

    • @optimus_prime01
      @optimus_prime01 5 หลายเดือนก่อน +2

      ok

    • @rudrakshtripathi4592
      @rudrakshtripathi4592 3 หลายเดือนก่อน +4

      On code360 by coding ninjas, 0 day is possible, so i thing it depends upon the question on the platform

    • @adityaasthana8758
      @adityaasthana8758 3 หลายเดือนก่อน

      Absolutely true...

    • @vijeshsshetty
      @vijeshsshetty 3 หลายเดือนก่อน

      beautiful

  • @roughero1353
    @roughero1353 3 หลายเดือนก่อน +10

    For the dsu approach imagine all deadlines as nodes of dsu which point to themselves.
    When a request for deadline comes in we fill the hash array deadline with the job id and and point the dsu deadline node to the previous day's deadline because current deadline jas become unavailable so we need the immediate previous empty deadline slot.
    Now if you simply do this the search will become logN so you need to do path compression so make the current requested deadline point to the ultimate parent deadline of previous day deadline. For example suppose day 3 is occupied and it points to day 2(day 2 is unoccupied as of now) and suppose request for day 4 comes in you make day 4 point to day 3 so when you next request for day 4 you can traverse back to day 2... with path compression you can directly make day 4 point to ultimate parent of day 3 which is day 2...

  • @siddharthchaudhary2320
    @siddharthchaudhary2320 4 หลายเดือนก่อน +6

    Thank you striver for the yet another wonderful explanation.
    If anyone can tell how we can reduce the time complexity of internal loop to O(1) using DSU , please explain the logic. Thank you

  • @samitkumar18
    @samitkumar18 5 หลายเดือนก่อน +24

    String please 🙏

  • @Dsa_kabaap
    @Dsa_kabaap 5 หลายเดือนก่อน +5

    Sir please start making videos on strings and stacks

  • @sumitmishra9795
    @sumitmishra9795 5 หลายเดือนก่อน +6

    00:04 Solve job sequencing problem to maximize profit.
    02:15 Maximize profit by scheduling jobs with deadlines efficiently
    04:25 Maximize profit by scheduling jobs within deadlines.
    06:21 Maximizing profit by scheduling jobs based on deadlines.
    08:19 Job sequencing problem solved using Greedy Algorithm
    10:09 Understanding the comparator logic and sorting based on profit in job sequencing problem
    12:17 Iterating through jobs to maximize profit
    14:17 Optimizing job sequencing problem complexity and space

  • @animexworld6614
    @animexworld6614 5 หลายเดือนก่อน +8

    Slightly mis typed Error in code It will be hash[ j ] = arr[i].jobid ... it will be hash of j not i

  • @shashanksinghal8395
    @shashanksinghal8395 3 หลายเดือนก่อน +24

    the question in greedy algorithm are very hard as compared to the arrays and linked lists. Does anyone else also feel that?

    • @DevanshMatha
      @DevanshMatha 3 หลายเดือนก่อน +8

      yeah bro yesterday I encoutered a N meetings in one room problem in my OA and could't figure out the greedy approach , my brain could only think of DP.

    • @rajputadi01
      @rajputadi01 2 หลายเดือนก่อน

      yesss
      there are so many possibilities of being greedy i cant figure out which one is correct
      and in the end the solution turns out to be something completely different
      there is a new pattern in almost every question

    • @NavyasriThalluri
      @NavyasriThalluri หลายเดือนก่อน

      us

  • @anshulsharma3137
    @anshulsharma3137 5 หลายเดือนก่อน +8

    Hi Striver, we can even use priority queue to optimize, basically choose only the maximum profit job from the jobs with the same deadline.

    • @dumpster-jackson
      @dumpster-jackson 5 หลายเดือนก่อน

      That will add extra O(n) space -> priority queue. Hence sorting will be better

    • @anshulsharma3137
      @anshulsharma3137 5 หลายเดือนก่อน +1

      @@dumpster-jackson I have given the priority queue approach to further optimize the sorting solution from O(n*n) to O(n*logn) bro. Instead of using Dsu we can use priority queue to approach

    • @dumpster-jackson
      @dumpster-jackson 5 หลายเดือนก่อน

      @@anshulsharma3137 Good approach!!

  • @World-Of-Mr-Motivater
    @World-Of-Mr-Motivater 4 หลายเดือนก่อน +7

    striver ingeneral when speaking in an interview ,will you speak in 1.5x or 1 x speed?

  • @parthapratimhalder4888
    @parthapratimhalder4888 5 หลายเดือนก่อน +8

    One thing I cannot understand why array of size 7 is taken where as max deadline is 6!!??

    • @anubhav0355
      @anubhav0355 5 หลายเดือนก่อน +1

      for a job with deadline 6, you will put it into hash[6] right? so size of hash must be 7 for it to have 6 as valid index!

    • @Its_Shubham_Negi
      @Its_Shubham_Negi หลายเดือนก่อน

      coz with size 6, the last idx would be 5 but we wanted 6, hence hash array of size 7 is taken

  • @shreyasrk6465
    @shreyasrk6465 18 วันที่ผ่านมา

    if we consider the 0th index then it would be like having a deadline of 7 DAYS which is not true so we need to start from 1-6 that way we will be inside the deadline range👍👍

  • @stith_pragya
    @stith_pragya 3 หลายเดือนก่อน +1

    UNDERSTOOD......Thank You So Much for this wonderful video..........🙏🏻🙏🏻🙏🏻🙏🏻🙏🏻🙏🏻

  • @apmotivationakashparmar722
    @apmotivationakashparmar722 หลายเดือนก่อน

    Great Explaination.

  • @masumali8356
    @masumali8356 2 หลายเดือนก่อน

    lovely explained...........

  • @kaichang8186
    @kaichang8186 หลายเดือนก่อน

    understood, thanks for the great video

  • @RajGupta-i3w
    @RajGupta-i3w 4 หลายเดือนก่อน +1

    Bhaiya, Strings aur Stack and Queue ki playlist kab laoge

  • @UECAshutoshKumar
    @UECAshutoshKumar หลายเดือนก่อน +1

    Thank you

  • @shashanksinghal8395
    @shashanksinghal8395 3 หลายเดือนก่อน +2

    why are you not counting the time complexity for calculating the max_deadline by looping through the array? that will add another O(N).

    • @nandinii317
      @nandinii317 2 หลายเดือนก่อน +1

      as that will not make any significant difference to time complexity ..as TC is already approaching to N^2

    • @shashanksinghal8395
      @shashanksinghal8395 2 หลายเดือนก่อน

      @@nandinii317 yes, that's correct, but he always calculate (almost) exact time complexity of each loop and then round it off. That's why I said that. Because in my approach I have same time complexity like him but with extra O(N).

  • @kasiviswanath7981
    @kasiviswanath7981 หลายเดือนก่อน

    In the if condition thee is a small error
    we need to update hash[j] not the hah[i]

  • @DeadPoolx1712
    @DeadPoolx1712 29 วันที่ผ่านมา

    UNDERSTOOD;

  • @prankishoriitkgp3772
    @prankishoriitkgp3772 หลายเดือนก่อน

    But Striver, what if all the deadlines are nth day; n=no of jobs
    In that case our time complexity would be O(n^2)
    but we are expected to solve in O(nlogn) time complexity
    Could you please clarify?
    can't we maintain a set data structure which will contain the days not occupied and according we will take the *(upper_bound(arr[i].dead)--) day

  • @adarshjaiswal7334
    @adarshjaiswal7334 5 หลายเดือนก่อน +13

    What is the concept of day0? The day should start with 1 right?

    • @divy04
      @divy04 5 หลายเดือนก่อน

      same doubt

    • @priyadarsimishra7909
      @priyadarsimishra7909 5 หลายเดือนก่อน +7

      I think it is to avoid like the deadline - 1 when changing value in hash, but the inner for loop should go from j = deadline to j >= 1 not till 0 because otherwise the output is not correct. I believe that is the error.

    • @nitjsrstudent5423
      @nitjsrstudent5423 5 หลายเดือนก่อน +2

      @@priyadarsimishra7909 yeah u r correct

    • @EvilGod_10
      @EvilGod_10 2 หลายเดือนก่อน

      If we have no time to perform that job, so will neglect

  • @subee128
    @subee128 3 หลายเดือนก่อน

    Thanks

  • @prathameshjadhav2942
    @prathameshjadhav2942 5 หลายเดือนก่อน +1

    Understood

  • @KartikeyTT
    @KartikeyTT 4 หลายเดือนก่อน

    tysm sir

  • @nassimaamohammad
    @nassimaamohammad 26 วันที่ผ่านมา

    greedy algorithm

  • @valiz2628
    @valiz2628 5 หลายเดือนก่อน +1

  • @Professor-du2pf
    @Professor-du2pf 5 หลายเดือนก่อน +2

    cout

    • @viveknandan4950
      @viveknandan4950 3 หลายเดือนก่อน +4

      you forget to put ;

    • @iamnottech8918
      @iamnottech8918 3 หลายเดือนก่อน +1

      @@viveknandan4950 you forget to put------is not recoznized------compile error .

  • @Shimu-x8r
    @Shimu-x8r 4 หลายเดือนก่อน

    can you please change the song that you have added at the end of each video.....

  • @anuragmandal3136
    @anuragmandal3136 5 หลายเดือนก่อน +5

    really cant understand anything he says

    • @adarshjaiswal7334
      @adarshjaiswal7334 5 หลายเดือนก่อน +9

      You definetly will, Just don't quit for next 22 days!!

    • @iamnottech8918
      @iamnottech8918 3 หลายเดือนก่อน +2

      u need to stop video multiple times in between and think why he said that if video is of 16 min it means it can take atleast 1hr to understand it is normal.

    • @noobnessmee
      @noobnessmee 3 หลายเดือนก่อน

      get your fundamentals right

    • @kushalsinha6917
      @kushalsinha6917 3 หลายเดือนก่อน

      skill issue

  • @Carson00_11
    @Carson00_11 5 หลายเดือนก่อน +1

    Hello baby 🤗

  • @avisoft-l2p
    @avisoft-l2p 15 วันที่ผ่านมา

    hash[j]=arr[i].profit

  • @KedarBhawthankar
    @KedarBhawthankar หลายเดือนก่อน +2

    chin tapak dam dam

  • @aryankumar3018
    @aryankumar3018 2 หลายเดือนก่อน

    Understood