ဖြစ်ရပ်မှန် Leetcode ဖြေရှင်းချက်အောက်ပိုင်းရန်


ခက်ခဲအဆင့် လွယ်ကူသော
မကြာခဏမေးတယ် Adobe က Apple Google
ကြိုး

စာလုံးအသေးစာလုံး Leetcode Solution အတွက်ပြusနာကကျွန်တော်တို့ကို string တစ်ခုပေးပြီးစာလုံးအကြီးအက္ခရာများအားလုံးကိုစာလုံးအသေးများအဖြစ်ပြောင်းပေးရန်တောင်းဆိုသည်။ စာလုံးအကြီးအသေးတွေအကုန်လုံးပြောင်းဖို့ကျွန်ုပ်တို့လိုအပ်တယ်။ ဒီတော့ပြproblemနာကရိုးရှင်းပုံရပေမဲ့ဖြေရှင်းချက်ထဲမဝင်ခင်မှာ။ ကျနော်တို့ဥပမာအနည်းငယ်ကြည့်ပါ။

ဖြစ်ရပ်မှန် Leetcode ဖြေရှင်းချက်အောက်ပိုင်းရန်

"Hello"
"hello"

ရှင်းလင်းချက် - ဒီ input မှာစာလုံးအကြီးအက္ခရာ 'H' ရှိပြီးစာလုံးအသေး 'h' အဖြစ်ပြောင်းသည်။ အခြား ello အက္ခရာများသည်အတူတူပင် ဖြစ်၍ ၎င်းတို့ကိုပြောင်းလဲရန်မလိုအပ်ပါ။

"here"
"here"

ရှင်းလင်းချက် - Input မှာရှိတဲ့အက္ခရာစဉ်အားလုံးသည်စာလုံးအသေးတွေဖြစ်ကြပါတယ်။ ကျွန်ုပ်တို့သည်မည်သည့်အက္ခရာများကိုမျှပြောင်းလဲရန်မလိုအပ်ပါ။ ပြုပြင်မွမ်းမံခြင်းမရှိဘဲထည့်သွင်းမှုကိုပြန်လည်ပေးပို့နိုင်ပါသည်။

In-built လုပ်ဆောင်ချက်များကိုအသုံးပြု။ ချဉ်းကပ်

To lower Case Leetcode Solution သည်စာလုံးအကြီးစာလုံးကိုစာလုံးအသေးပြောင်းရန်ရိုးရှင်းစွာအလိုလျှောက်တောင်းဆိုခဲ့သည်။ ဒီပရိုဂရမ်ကိုပရိုဂရမ်ဘာသာစကားများဖြင့်တည်ဆောက်ထားသောလုပ်ဆောင်မှုများကိုအလွယ်တကူလုပ်ဆောင်နိုင်သည်။ ထို့ကြောင့်ကျွန်ုပ်တို့သည် C ++ တွင် tolower () သို့မဟုတ် Java တွင် toLowerCase () ကိုသုံးနိုင်သည်။ ဒီလုပ်ဆောင်ချက်တွေကိုအသုံးပြုပြီး၊ ကြိုး input ကိုအဖြစ်။ ထို့နောက်စာလုံးအသေးများနှင့်အတူ string ကိုစာလုံးအသေးဖြင့်ရရှိသည်။

ကုဒ်

စာလုံးအနိမ့်ဆုံး Leetcode ဖြေရှင်းနည်းအတွက် C ++ code

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

string toLowerCase(string str) {
    transform(str.begin(), str.end(), str.begin(), [](unsigned char c){ return std::tolower(c); });
    return str;
}

int main(){
    cout<<toLowerCase("Hello");
}
hello

စာလုံးအနိမ့်ဆုံး Leetcode ဖြေရှင်းနည်းအတွက်အတွက် Java code

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

class Main {
    public static String toLowerCase(String str) {
        return str.toLowerCase();
    }
    
    public static void main (String[] args) throws java.lang.Exception
  {
      System.out.print(toLowerCase("Hello"));
  }
}
hello

ရှုပ်ထွေးဆန်းစစ်ခြင်း

အချိန်ရှုပ်ထွေး

အို (N)၊ In-built နည်းလမ်းများသည်ပေးထားသော string ကိုစာလုံးအသေးများအဖြစ်သို့ပြောင်းလဲရန် input တစ်ခုလုံးကိုဖြတ်သွားသည်။

အာကာသရှုပ်ထွေးမှု

အို (၁)၊ ကျွန်တော်ဘာမှမသိုလှောင်ဖို့မလိုအပ်ပါဘူးကတည်းက။ အဆိုပါအာကာသရှုပ်ထွေးစဉ်ဆက်မပြတ်ဖြစ်ပါတယ်။

Leetcode Solution ကိုအနိမ့်ဆုံးလျှော့ချရန်အတွက်အခြားနည်းလမ်း

ကျွန်ုပ်တို့အသုံးပြုနိုင်သည့်အခြားနည်းလမ်းမှာ ASCII နံပါတ်များဖြစ်သည်။ ပေးထားသော input string ကို ဖြတ်၍ ဖြတ်သန်းသွားသောအက္ခရာ၏ ASCII ကုဒ်သည် ASCII ကုဒ် A မှ Z ကြားတွင်တည်ရှိသည်ကိုစစ်ဆေးနိုင်သည်။ ကျွန်ုပ်တို့သည် ASCII ကုဒ်အေနှင့်အေအကြားခြားနားချက်ကိုပေါင်းထည့်လိုက်ရုံသာဖြစ်သည်။ ၎င်း၏သက်ဆိုင်ရာအနိမ့်အက္ခရာဇာတ်ကောင်ရန်။ သို့သော် java တွင်ကြိုးများကိုမပြောင်းလဲနိုင်သောကြောင့်ကျွန်ုပ်တို့လိုအပ်သည် မင်းဘူး task ကိုဖြည့်စွက်ရန်။

အခြားရွေးချယ်စရာချဉ်းကပ်မှုအတွက်ကုဒ်

စာလုံးအနိမ့်ဆုံး Leetcode ဖြေရှင်းနည်းအတွက် C ++ code

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

string toLowerCase(string str) {
    for(int i=0;i<str.length();i++)
        if(str[i]>='A' && str[i]<='Z')
            str[i] = str[i] + ('a' - 'A');
    return str;
}

int main(){
    cout<<toLowerCase("Hello");
}
hello

စာလုံးအနိမ့်ဆုံး Leetcode ဖြေရှင်းနည်းအတွက်အတွက် Java code

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

class Main {
    public static String toLowerCase(String str) {
    	StringBuffer res = new StringBuffer();
        for(int i=0;i<str.length();i++)
        	if(str.charAt(i)>='A' && str.charAt(i)<='Z')
            	res.append((char)(str.charAt(i) + ('a' - 'A')));
            else
            	res.append(str.charAt(i));
    	return res.toString();
    }
    
    public static void main (String[] args) throws java.lang.Exception
  {
      System.out.print(toLowerCase("Hello"));
  }
}
hello

ရှုပ်ထွေးဆန်းစစ်ခြင်း

အချိန်ရှုပ်ထွေး

အို (N)၊ ဘယ်မှာ N ကပေးထားသော string ကို၏အရွယ်အစားသည်။ ကျွန်ုပ်တို့သည် string တစ်ခုလုံးကိုဖြတ်သန်းရန်လိုအပ်သောကြောင့်အချိန်ရှုပ်ထွေးမှုသည်ထည့်သွင်းမှု၏အရွယ်အစားပေါ်တွင်မူတည်သည်။

အာကာသရှုပ်ထွေးမှု

အို (၁) ဟာ C ++ မှာ၊ စစ်ဆင်ရေး In-place ကြောင့်ဖြစ်သည်။ algorithm တစ်ခုလုံး၏ space ရှုပ်ထွေးမှုသည်စဉ်ဆက်မပြတ်ဖြစ်သည်။ ဒါပေမယ့်ကြာလိမ့်မယ် ဂျာဗား၌အို (N) ဘာလို့လဲဆိုတော့ string ကို java မှာမပြောင်းလဲနိုင်တဲ့အတွက်ရလဒ်ကိုသိမ်းဆည်းဖို့ string အသစ်တစ်ခုဖန်တီးဖို့လိုတယ်။