String to Integer atoi 🔥| Leetcode 8 | String

แชร์
ฝัง
  • เผยแพร่เมื่อ 10 ม.ค. 2025

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

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

    I am newbie , have two doubts.
    1) why we using long to define ans
    2)in the line ans=ans*10+s[i]-' 0 ' what is purpose of this one'0'
    I hope you will explain it😢😢

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

      hi sure, :)
      so see,
      1. if we do not use long, and we use int, we get signed overflow error
      Line 23: Char 23: runtime error: signed integer overflow: 912834723 * 10 cannot be represented in type 'int' (solution.cpp)
      SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior solution.cpp:23:23
      this is because ans variable may add up to values which go beyond specific integer range, so we use long :)
      2. so, the expression s[i] - '0' is a common way to convert a character representing a digit to its corresponding integer value.
      for eg.
      If s[i] is '5', its ASCII value is 53. Subtracting the ASCII value of '0' (48) from it gives 53 - 48 = 5, which is the integer representation of the digit.

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

      @@AyushiSharmaDSA omg thanks mam 👍 . 😊

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

      @@selvarajan4062 no worries :)

  • @tanujarora4906
    @tanujarora4906 ปีที่แล้ว +45

    This Question is king of edge cases.

  • @susmitapatil4847
    @susmitapatil4847 ปีที่แล้ว +13

    I saw multiple video solutions but no one able to clear this much. Good job. Keep doing good work. Thanks!!

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

    🎯 Key points for quick navigation:
    00:02 *Handle leading whitespace*
    00:42 *Convert string to integer*
    01:25 *Check sign (positive/negative)*
    02:08 *Read until non-digit*
    Made with HARPA AI

  • @tusharnain6652
    @tusharnain6652 2 ปีที่แล้ว +7

    You don't know how happy i am after seeing your video in search result...every time.

    • @AyushiSharmaDSA
      @AyushiSharmaDSA  2 ปีที่แล้ว +5

      Thank you so much Tushar, means a lot😊😊

  • @OatsAurCode
    @OatsAurCode ปีที่แล้ว +1

    Videos are helpful. Just adding the python version in case anyone needs
    class Solution:
    def myAtoi(self, str: str) -> int:
    # for removing white spaces
    str = str.strip()
    if not str:
    return 0
    sign = -1 if str[0] == '-' else 1
    str = str[1:] if str[0] in ['-', '+'] else str
    res = 0
    for char in str:
    if not char.isdigit():
    break
    res = res * 10 + int(char)
    if res * sign >= 2**31 - 1:
    return 2**31 - 1
    if res * sign

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

    Clear explanation, every second was worth it!!

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

      thank you so much 😊🙌

  • @hrithikrudra4292
    @hrithikrudra4292 3 ปีที่แล้ว +2

    Detailed explanation for each case...!!Wow

  • @user-ee1hg
    @user-ee1hg 6 หลายเดือนก่อน +1

    really great explanation !!!! found this after watching some tuff explaining videos....keep doing well....

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

      thank you, glad you liked it :)

  • @raviashwin1157
    @raviashwin1157 3 ปีที่แล้ว +4

    I love your voice❤️,such a nice explanation keep uploading quality content.

  • @amarjeetkumarsingh733
    @amarjeetkumarsingh733 ปีที่แล้ว

    Best explanation among all videos of this prob I have ever seen.....Thank You

    • @AyushiSharmaDSA
      @AyushiSharmaDSA  ปีที่แล้ว

      Thank you so much Amarjeet, glad it was helpful 🤩😊

  • @ishangujarathi10
    @ishangujarathi10 ปีที่แล้ว +1

    thankyou so much for such an easy explanation of this problem

  • @ChandraShekhar-by3cd
    @ChandraShekhar-by3cd 3 ปีที่แล้ว +6

    Crystal clear Explanation. Thanks! Happy Makar Sankranti ! 😇

    • @AyushiSharmaDSA
      @AyushiSharmaDSA  3 ปีที่แล้ว +3

      Thank you Chandra, and Happy Makar Sakranti to you too :)

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

    she's looking like she's solving this for like days (might be because of all the edge cases)
    REAL KODER

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

    Great Explaination Ayushi ❤❤👋👋

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

    Thank you so much ....your way of explanation is awesome☺

  • @saikumargatla4706
    @saikumargatla4706 ปีที่แล้ว +1

    Explained very well

  • @SubhasisNandaYoganeer
    @SubhasisNandaYoganeer 2 ปีที่แล้ว +4

    Awesome explanation thanks for providing java solution as well means a lot you're an inspiration

  • @bharathKumar-or6gd
    @bharathKumar-or6gd 5 หลายเดือนก่อน

    Thank you Ayushi, Good explantion

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

      thank you, glad you liked it :)

  • @ankushladani496
    @ankushladani496 2 ปีที่แล้ว +1

    Good Explaination...

  • @AshwaniKumar-im6zb
    @AshwaniKumar-im6zb 3 ปีที่แล้ว +1

    Thanks Ayushi for your time.

    • @AyushiSharmaDSA
      @AyushiSharmaDSA  3 ปีที่แล้ว

      Welcome Ashwani, glad it was helpful :)

  • @sadhgurumeditationmusic531
    @sadhgurumeditationmusic531 2 ปีที่แล้ว

    Thanks Ayushi ,amazing explaination

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

    Thanks Ayushi for this awesome explanation❤❤

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

      @Ayushi Sharma

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

      @@allmovies2473 welcome, glad it was helpful ❤️😊

  • @realAB459
    @realAB459 3 ปีที่แล้ว +2

    I just opened youtube thinking that today's leetcode video has been uploaded here.😁

  • @SuperWhatusername
    @SuperWhatusername 2 ปีที่แล้ว

    Thanks Ayushi. Covered everything

  • @OatsAurCode
    @OatsAurCode ปีที่แล้ว +1

    Explanation is best. Just wanted to know is cp mandatory for coding rounds of product based companies. If yes then how to begin.

  • @vineetkumar2899
    @vineetkumar2899 ปีที่แล้ว

    Thanks a lot for this awesome explanation.

  • @Supercool7042
    @Supercool7042 2 ปีที่แล้ว +1

    well explained !! thanks

  • @Surya-np1bb
    @Surya-np1bb 2 ปีที่แล้ว +2

    Thanks, these videos are really helpful!

    • @AyushiSharmaDSA
      @AyushiSharmaDSA  2 ปีที่แล้ว +1

      Welcome Surya, glad they are helpful 🤗

  • @sayanraha77
    @sayanraha77 ปีที่แล้ว

    Very nice,crisp and intutive approach didi thanks a lot

  • @anshumaan1024
    @anshumaan1024 ปีที่แล้ว +1

    *line 24 & 25* should include equal to also , like this
    if( sign==-1 && -1*ans

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

      no, the problem statement condition states strictly out of range.

  • @MAYANKSINGH-mf2ll
    @MAYANKSINGH-mf2ll ปีที่แล้ว

    thanks Maam for the crystal and clear explanation 👏👏

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

      thank you, glad it was helpful :)

  • @sufiyaniqbal5280
    @sufiyaniqbal5280 2 ปีที่แล้ว

    thanks for the explanation mam ,respect your efforts

  • @crazeeealgorithms3236
    @crazeeealgorithms3236 ปีที่แล้ว

    Great Explanation!!

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

    very nice explanation ....

  • @NavinVenkat-t4d
    @NavinVenkat-t4d 2 หลายเดือนก่อน

    Thanks Ayushi

  • @rashidalikhan3613
    @rashidalikhan3613 2 ปีที่แล้ว

    Clear explanation.. well done 👍

    • @AyushiSharmaDSA
      @AyushiSharmaDSA  2 ปีที่แล้ว +1

      Thank you Rashid, glad it was helpful :)

  • @chiragjain1424
    @chiragjain1424 2 ปีที่แล้ว +3

    i think in second while loop , it should be s[i]==' ' instead of s[0]==' ' .

    • @ece-projects3969
      @ece-projects3969 2 ปีที่แล้ว

      bro she change the string from original s to s.substr(i) so it from starting that's why it is s[0]

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

    very well explained

  • @software3089
    @software3089 2 ปีที่แล้ว

    Superb explanation !

  • @ecs185_shaileshbharti3
    @ecs185_shaileshbharti3 3 ปีที่แล้ว +2

    💯🔥
    Reach ++;

  • @yobro7322
    @yobro7322 2 ปีที่แล้ว

    very nice explanation

  • @rahulkumar4003
    @rahulkumar4003 2 ปีที่แล้ว

    very nicely explained❤

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

    Great Job!

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

    Big fan ❤❤❤

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

      I am too 😛😁

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

      @@AyushiSharmaDSA 😁😁😁😁

  • @anurag_ad_01
    @anurag_ad_01 ปีที่แล้ว

    awesome solution

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

    why i got this error " module 'string' has no attribute 'letters'" in leetcode.
    Below is my code
    int myAtoi(string s) {
    if(s.length()==0) return 0;
    int i=0;
    if(i

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

    you are awesomeee....but at the same time, after seeing your Github, feeling like i'm just way too far from it🙂

  • @amitkumarchoudhary9008
    @amitkumarchoudhary9008 2 ปีที่แล้ว

    Mam your voice ❤️❤️

  • @shaikaftabahmed9666
    @shaikaftabahmed9666 ปีที่แล้ว

    you earned a sub!!!!

  • @replyplz8874
    @replyplz8874 3 ปีที่แล้ว +1

    Why are checking again s[0]==‘ ‘ in 2 nd while loop?

    • @AyushiSharmaDSA
      @AyushiSharmaDSA  3 ปีที่แล้ว

      Because there might be a space after digit or anywhere in middle, for eg : " 234 6hhs", in this test case there is space after 4 , so we will break after that and output will be 234

    • @replyplz8874
      @replyplz8874 3 ปีที่แล้ว

      @@AyushiSharmaDSA Thanks for ur reply.
      I mean does isdigit function doesn’t consider spaces?

    • @AyushiSharmaDSA
      @AyushiSharmaDSA  3 ปีที่แล้ว +1

      @@replyplz8874 No, it doesn't consider spaces, it will return true if there is digit otherwise false

    • @nehalpradhan2229
      @nehalpradhan2229 2 ปีที่แล้ว

      @@AyushiSharmaDSA why s[0] == ' ' instead of s[i] == ' ' ??

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

    @dipanshu apka bohottt bdaa fan h

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

      ohh, agar yahi dipanshu bolta to zyada acha lgta 😜 btw thank you for letting me know :)

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

      @@AyushiSharmaDSA 1 min usko btata hu wo krega comment 😂

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

    nice

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

    class Solution {
    public int myAtoi(String s) {
    //remove leading zeroes
    StringBuilder sb = new StringBuilder(s);
    while(sb.length()>0 && Character.isWhitespace(sb.charAt(0))){
    sb.deleteCharAt(0);
    }
    if(sb.length()==0)
    return 0;
    boolean neg = false;
    char ch = sb.charAt(0);
    if(ch=='-'){
    neg = true;
    sb.deleteCharAt(0);
    }
    if(ch=='+'){
    sb.deleteCharAt(0);
    }
    StringBuilder sb2 = new StringBuilder();
    for(int i=0; i='0' && ch2

  • @sourjadhar9332
    @sourjadhar9332 ปีที่แล้ว

    1030 cases are running out of 1084 cases...is it true for you as well?bcz i can't find any error in my code

  • @markphilip3982
    @markphilip3982 ปีที่แล้ว

    you earned a sub

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

      thank you, glad it was helpful :)

  • @kumarpatra691
    @kumarpatra691 2 ปีที่แล้ว

    Can I get all your java coding session in one place..?So,I can practice in order.

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

    Thank you!!

  • @reenayadav8468
    @reenayadav8468 3 ปีที่แล้ว

    Abhi me apka he vedio dekh rahi thi😄

    • @AyushiSharmaDSA
      @AyushiSharmaDSA  3 ปีที่แล้ว +2

      🥺🥺🥺🙌🏻

    • @reenayadav8468
      @reenayadav8468 3 ปีที่แล้ว

      @@AyushiSharmaDSA and thank you for providing java code link🤩

  • @BreezyBr0
    @BreezyBr0 ปีที่แล้ว

    what about alphabets ??

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

    Thanks a lot!

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

    above while loop not removing spaces

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

    Great thanks

  • @rajaranjith5151
    @rajaranjith5151 ปีที่แล้ว

    just tell me what can I do to say just like you did, that this is very easy peoblem?

  • @yogeshyts
    @yogeshyts 2 ปีที่แล้ว

    home theather pe lga ke suni h ye video itna acha mic h tumhara

  • @it_91_vaibkhare20
    @it_91_vaibkhare20 3 ปีที่แล้ว

    If after trim string become empty then how it will check for sign

    • @AyushiSharmaDSA
      @AyushiSharmaDSA  3 ปีที่แล้ว +1

      trim only removes the leading whitespaces, if string has digits, those will not be removed :)

  • @mahadeolokhande2996
    @mahadeolokhande2996 ปีที่แล้ว

    Tnq u 🎉❤

  • @balavardhanreddy8581
    @balavardhanreddy8581 ปีที่แล้ว

    whats the meaning of s[i]-'0'?
    will it convert to int?

  • @ManjeetSingh-fr3ue
    @ManjeetSingh-fr3ue ปีที่แล้ว +5

    please provide reccursive solution of this question

  • @SarojYadav-h2z
    @SarojYadav-h2z ปีที่แล้ว

    Thanks mam 😌

  • @Anurag-fk3op
    @Anurag-fk3op 8 หลายเดือนก่อน

    like who is here after passing all the given test cases

  • @Vishaljoshi-uo6yc
    @Vishaljoshi-uo6yc 2 ปีที่แล้ว

    Good JOb

  • @SavitarOP
    @SavitarOP 3 ปีที่แล้ว

    OP Solution

  • @SRV.77
    @SRV.77 2 ปีที่แล้ว

    Thank you dI

  • @sakshampandit1335
    @sakshampandit1335 2 ปีที่แล้ว

    ye ab nhi chalra hai.update soln bnao

  • @manojgmanojg9600
    @manojgmanojg9600 2 ปีที่แล้ว

    Wonderful Explanation ,I understand the each and every line.

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

    Jab phli bar dekha toh lga ki aray yaar bachi pdha rhi hai phir LinkedIn pe naam search kiya toh Walmart phir Microsoft 😂😂😂

  • @shachisinghal8856
    @shachisinghal8856 ปีที่แล้ว

    This quest should have been in HARDof leetcode.

  • @codinghub5540
    @codinghub5540 ปีที่แล้ว

    Please, before uploading the video check it . Sometime solution is hide behind your face screen. Otherwise it's good . Thank for explanation 🙂.

    • @AyushiSharmaDSA
      @AyushiSharmaDSA  ปีที่แล้ว

      Yeah, so sorry for this, will take care next time :)

  • @Omkar-fg4ws
    @Omkar-fg4ws 6 หลายเดือนก่อน +1

    ooooooo cutieeee🥲🙂🙂

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

    Thank you

  • @riteshmishra5008
    @riteshmishra5008 ปีที่แล้ว

    for "+ -12" it is showing 0

  • @vitaminprotein2217
    @vitaminprotein2217 2 ปีที่แล้ว

    why cant we do this 😂
    return stoi(s);
    although all cases are accepted but in submission it it throwing RTE lol

  • @Abhay14
    @Abhay14 ปีที่แล้ว

    thanks didi

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

    ethna he hai kya questions string k ma'am abh recursion chalu karo aap 🥲

  • @kidoo1567
    @kidoo1567 ปีที่แล้ว

    Thanx Sharma

  • @pranavkumarparihar1397
    @pranavkumarparihar1397 3 ปีที่แล้ว

    Thanks di

    • @AyushiSharmaDSA
      @AyushiSharmaDSA  3 ปีที่แล้ว

      Welcome Pranav, glad it was helpful :)

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

    some of the testcases failing

  • @ShahNawaz-cx3pi
    @ShahNawaz-cx3pi 3 หลายเดือนก่อน

    Working code on Leetcode , with updated tests
    class Solution {
    public:
    int myAtoi(string s) {
    int len = s.size();
    int i = 0;
    int sign = 1; // postive
    long long int res = 0;
    while(i

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

      thanks for sharing ur code :)

  • @yogeshyts
    @yogeshyts 2 ปีที่แล้ว

    easy tha but test case bekar the

  • @bhuvandahal421
    @bhuvandahal421 ปีที่แล้ว

    After multiple tries, I came up with this solution:
    class Solution {
    public:
    int myAtoi(string s)
    {
    int flag = 0;
    long int result = 0;
    int j = 0;
    for(int i = 0; i < s.length(); ++i)
    {
    if(isdigit(s[i]))
    {
    result = result*10 + int(s[i]) - 48;
    if(flag*result > 2147483647)
    {
    return 2147483647;
    }
    else if(flag*result < -2147483648)
    {
    return -2147483648;
    }
    ++j;
    if(flag == 0)
    {
    flag = 1;
    }
    }
    else if(s[i] == '-' || s[i] == '+')
    {
    if(!flag && s[i] == '-')
    {
    flag = -1;
    }
    else if(!flag && s[i] == '+')
    {
    flag = 1;
    }
    else
    {
    break;
    }
    }
    else if(j || flag || flag == -1)
    {
    break;
    }
    else if(s[i] != ' ')
    {
    return 0;
    }
    }
    result *= flag;
    return (int)result;
    }
    };

  • @omsharma9683
    @omsharma9683 ปีที่แล้ว

    Awesome Explanation !!