கடைசி வார்த்தை லீட்கோட் தீர்வின் நீளம்


சிரமம் நிலை எளிதாக
அடிக்கடி கேட்கப்படுகிறது கூகிள்
சரம்

சிக்கல் அறிக்கை

இந்த சிக்கலில் ஒரு பல சொல் சரம் கொடுக்கப்பட்டுள்ளது, அந்த சரத்தில் இருக்கும் கடைசி வார்த்தையின் நீளத்தை நாம் திருப்பித் தர வேண்டும். வார்த்தைகள் இல்லை என்றால் நாம் 0 ஐ திருப்பித் தர வேண்டும்.

உதாரணமாக

s = "Hello World"
5

விளக்கம்: “உலகம்” என்ற கடைசி வார்த்தையின் நீளம் 5 ஆகும்.

s = " "
0

விளக்கம்: வார்த்தை இல்லாததால், பதில் 0.

அணுகுமுறை

இந்த சிக்கலை முதலில் தீர்க்க, இரு முனைகளிலும் சரத்தில் இருக்கும் அனைத்து இடைவெளிகளையும் ஒழுங்கமைக்க வேண்டும். முதல் எழுத்திலிருந்து கடைசி எழுத்துக்கு சரத்தை மீண்டும் கூறுவதன் மூலம் கடைசி வார்த்தையின் நீளத்தைக் காணலாம். ஒழுங்கமைக்க நாம் 'ஸ்டார்ட்' மற்றும் 'எண்ட்' ஆகிய இரண்டு மாறிகள் பயன்படுத்தலாம், அவை கொடுக்கப்பட்ட சரத்தில் முறையே முதல் எழுத்து மற்றும் கடைசி எழுத்தின் குறியீட்டை சேமிக்கும்.

 

முதல் எழுத்தின் குறியீட்டைக் கண்டுபிடிக்க, மாறி 'தொடக்க' = 0 ஐ துவக்கவும்.
இப்போது சிறிது சுழற்சியைப் பயன்படுத்தவும், முதல் எழுத்துக்குறி கிடைக்காத வரை மாறியில் மதிப்பை அதிகரிக்கவும்.
இதேபோல் கடைசி எழுத்துக்கு மாறியை n-1 ​​உடன் துவக்குங்கள், இங்கு n என்பது கொடுக்கப்பட்ட சரத்தின் அளவு மற்றும் அதன் மதிப்பை அதே சுழற்சியில் குறைக்கும் வரை நாம் முதல் எழுத்தை (முடிவில் இருந்து) பெறாத வரை குறைக்கவும்.

தொடக்க> முடிவு என்றால், உள்ளீட்டு சரத்தில் எந்த எழுத்தும் இல்லை என்று அர்த்தம், எனவே 0 ஐத் தரவும்.
இல்லையெனில் எங்கள் உண்மையான சரம் உள்ளது.

கடைசி வார்த்தையின் நீளம்

இப்போது கடைசி வார்த்தையின் நீளத்தைக் கண்டுபிடிக்க, இப்போது எந்த சரணாலயத்தையும் எதிர்கொள்ளாத வரை அல்லது சரத்தின் முதல் எழுத்தை அடையும் வரை உண்மையான சரத்தை முடிவில் இருந்து மீண்டும் செய்ய ஒரு மறு செய்கை மாறி எடுக்கலாம்.
இப்போது கடைசி எழுத்துக்குறி குறியீட்டுக்கும் (மாறி முடிவில் சேமிக்கப்படுகிறது) மற்றும் மாறி போஸில் சேமிக்கப்படும் தற்போதைய குறியீட்டிற்கும் உள்ள வித்தியாசத்தை நாங்கள் தருகிறோம்.

நடைமுறைப்படுத்தல்

கடைசி வார்த்தையின் நீளத்திற்கான சி ++ திட்டம்

#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

கடைசி வார்த்தையின் நீளத்திற்கான ஜாவா திட்டம்

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 என்பது உள்ளீட்டு சரத்தின் நீளம். ஏனென்றால் நாம் ஒரு சுழற்சியில் சரம் வழியாக மீண்டும் வருகிறோம், மோசமான நிலையில் அது முதல் எழுத்துக்கு செல்லலாம்.

விண்வெளி சிக்கலானது 

ஓ (1): உள்ளீட்டைப் பொருட்படுத்தாமல் நிலையான நினைவகம் நுகரப்படும்.