לענג פון לעצטע וואָרט לעעטקאָדע סאַלושאַן


שוועריקייט לעוועל גרינג
אָפט געבעטן אין גוגל
שטריקל

פּראָבלעם סטאַטעמענט

אין דעם פּראָבלעם אַ מולטיוואָרד שטריקל איז געגעבן און מיר האָבן צו צוריקקומען די לענג פון די לעצטע וואָרט פאָרשטעלן אין דעם שטריקל. אויב עס זענען קיין ווערטער, מיר מוזן צוריקקומען 0.

בייַשפּיל

s = "Hello World"
5

דערקלערונג: לענג פון די לעצטע וואָרט "וועלט" איז 5.

s = " "
0

דערקלערונג: ווייַל עס איז קיין וואָרט, ענטפֿערן איז 0.

צוגאַנג

צו סאָלווע דעם פּראָבלעם ערשטער, מיר מוזן באַפרייַען אַלע די ווייסע ספּייסאַז אין די שטריקל ביי ביידע ענדס. דערנאָך מיר קענען געפֿינען די לענג פון די לעצטע וואָרט דורך יטערייטינג די שטריקל פון ערשטער כאַראַקטער צו לעצט כאַראַקטער. פֿאַר טרימינג, מיר קענען נוצן צוויי וועריאַבאַלז 'אָנהייב' און 'סוף' וואָס וועט קראָם די אינדעקס פון דער ערשטער כאַראַקטער און די לעצטע כאַראַקטער אין די געגעבן שטריקל ריספּעקטיוולי.

 

צו געפֿינען די אינדעקס פון דער ערשטער כאַראַקטער, יניטיאַליזירן די בייַטעוודיק 'אָנהייב' = 0.
איצט נאָר נוצן אַ בשעת שלייף און ינקראַמאַנט די ווערט אין די בייַטעוודיק ביז מיר טאָן ניט באַקומען די ערשטע כאַראַקטער.
סימילאַרלי פֿאַר די לעצטע כאַראַקטער יניטיאַלייזד בייַטעוודיק מיט n-1, ווען n איז די גרייס פון די געגעבן שטריקל און דיקריסט זייַן ווערט אין בשעת שלייף ביז מיר טאָן ניט באַקומען ערשטער כאַראַקטער (פֿון סוף).

אויב אָנהייב> סוף, עס מיטל אַז עס זענען קיין כאַראַקטער אין די ינפּוט שטריקל, און צוריקקומען 0.
אַנדערש מיר האָבן אונדזער פאַקטיש שטריקל.

לענג פון לעצטע וואָרט

איצט צו געפֿינען די לענג פון די לעצטע וואָרט, מיר קענען איצט נעמען אַ יטעראַטינג בייַטעוודיק פּאָז צו יטערירן די פאַקטיש שטריקל פון די סוף ביז מיר טאָן ניט טרעפן קיין ווייט ספּייס אָדער מיר דערגרייכן דעם ערשטן כאַראַקטער פון דער שטריקל.
איצט מיר ווייַזן די חילוק צווישן די לעצטע כאַראַקטער אינדעקס (סטאָרד אין די בייַטעוודיק סוף) און די קראַנט אינדעקס וואָס איז סטאָרד אין די בייַטעוודיק פּאַס.

ימפּלעמענטאַטיאָן

C ++ פּראָגראַם פֿאַר לענג פון לעצטע וואָרט

#include <bits/stdc++.h>
using namespace std;

int lengthOfLastWord(string s) 
{
        
        int n=s.size();
        if(n==0) return 0;
        
        int start,end;
        
        start=0;
        while(start< n && s[start]==' ') start++;      //left trim
        
        end=n-1;
        while(end >=0 && s[end]==' ') end--;         //right trim
        
        if(start>end) return 0;
        
        int pos=end;
        while(pos>=start)
        {
            if(s[pos]==' ') return end-pos;
            else pos--;
        }
        
        return end-pos;
        
}
int main() 
{
    string s="Hello World";
    
    cout<<lengthOfLastWord(s)<<endl;
    
  return 0; 
}
5

Java פּראָגראַם פֿאַר לענג פון לעצטע וואָרט

import java.util.*;
import java.lang.*;

class LastWord
{  
    public static int lengthOfLastWord(String s) 
    {
        int n=s.length();
        if(n==0) return 0;
        
        int start,end;
        
        start=0;
        while(start< n && s.charAt(start)==' ') start++;    //left trim
        
        end=n-1;
        while(end >=0 && s.charAt(end)==' ') end--;      //right trim
        
        if(start>end) return 0;
        
        int pos=end;
        while(pos>=start)
        {
            if(s.charAt(pos)==' ') return end-pos;
            else pos--;
        }
        
        return end-pos;
    }
    
    public static void main(String args[])
    {
        String s="Hello World";
        System.out.println(lengthOfLastWord(s));
    }
}
5

קאַמפּלעקסיטי אַנאַליסיס פֿאַר לענג פון לעצטע וואָרט

צייט קאַמפּלעקסיטי

אָ (n): וואו n איז די לענג פון די ינפּוט שטריקל. ווייַל מיר יטערירן דורך די שטריקל אין אַ איין שלייף, און אין ערגסט פאַל עס קען גיין צו דער ערשטער כאַראַקטער.

ספעיס קאַמפּלעקסיטי 

אָ (1): קעסיידערדיק זיקאָרן קאַנסומד, ראַגאַרדלאַס פון די אַרייַנשרייַב.