چيڪ ڪريو جيڪڏهن ٻه اسٽرنگ آريون برابر آهن Leetcode Solution


تڪليف جي سطح آسان
بار بار پڇڻ ۾ ڪريو
اسٽرنگ

مسئلو چيڪ ڪريو جيڪڏهن ٻه اسٽرنگ جون برابر آهن Leetcode حل اسان کي ٻه مهيا ڪري ٿو قطارون تارن جو. پوءِ اسان کي ٻڌايو وڃي ته چيڪ ڪنداسين ته ڇا اهي ٻه تارون برابر برابر آهن. هتي جي مساوات ان حقيقت کي ظاهر ڪري ٿي ته جيڪڏهن ارڙتن ۾ موجود تار سان سلهاڙيل آهن. پوءِ ٺڳي ٿيڻ کانپوءِ ، ٻئي تار برابر يا هڪجهڙا هوندا. تنهن ڪري حل ۾ گهڙي وڃڻ کان پهرين ، اچو ته پهريان ڪجهه مثالن تي نظر وجهون.

مثال

word1[] = {"ab", "c"}
word2[] = {"a", "bc"}
true

وضاحت: ٻئي Bothاريون ”اي بي سي“ ٺاهيون جيڪڏهن اسان سڀني تار کي ملائي سگهون. تنهن ڪري ، اهي برابر آهن.

چيڪ ڪريو جيڪڏهن ٻه اسٽرنگ آريون برابر آهن Leetcode Solution

چڪاس لاءِ غور ڪريو جيڪڏهن ٻه اسٽرنگ جون قطارون برابر آهن Leetcode Solution

مسئلو اسان کي ٻه تار جوڙي ڇڏيو. هڪ ٻئي ۾ ٻئي جا ڪيترائي تار ٿي سگهيا آهن. پر جڏهن گڏجاڻي ڪئي وئي ، ٻنهي نتيجن واري اسٽرنگ ساڳيا هوندي. جيڪڏهن اهي ساڳيا ئي ٿيڻا هجن اسان سچا موٽون ٿا ٻيو اسان غلط موٽون ٿا.
هاڻ ، حل ڪرڻ جو هڪ سادو ۽ آسان آسان طريقو آهي صرف هر تار جي نظارن مان گذرڻ. جڙيل هڻندي ، اسان اسٽرنگ کي ڳن twoيو ۽ ٻه نتيجو ڪندڙ اسٽرنگ ٺاهيا. تنهن ڪري ، هن ڪامياب آپريشن کان پوءِ ، اسان چڪاس ڪنداسين ته تارون ساڳيون آهن. پر هي آپريشن اسان کي اسٽرنگ ٺاهڻ جي ضرورت آهي. اھڙي طرح عمل جي اضافي جڳھ جي ضرورت آھي. پر اسان پڻ جڳهه ۾ مسئلو حل ڪري سگھون ٿا جيڪا اضافي جڳھ استعمال ڪرڻ کانسواءِ آھي.
اسان استعمال ڪنداسين چار متغير ، ٻه هر سر لاءِ. اهي متغيرات قطار ۾ اشاري طور ڪم ڪندا ۽ پوءِ تار لاءِ. اھو طريقي سان انھن مان ٻن کي ٻڌائيندا ته اھي پھرين صف ۾ I1th واري جڳھ جي j1th ڪردار تي آھن. ساڳي طرح ، i2th تار جو j2th ڪردار به i2 ۽ j2 جي نمائندگي ڪندو آهي. ھاڻي سڀ ڪجھ رھجي ويو نفاذ آھي.
اسان هڪ وقت لوپ استعمال ڪيو جنهن جي اندر اسين ڪجهه شرطون جاچيون ٿا. جيڪڏھن ٻنھي نظارن ۾ هاڻوڪو ڪردار درست نه ٿيو ته اسان غلط واپس موٽنداسين. ٻي صورت ۾ اسان چڪاسون ٿا ته اسان تار جي آخري ڪردار تي آهيون. جيڪڏهن اهو ٿئي ٿو ته اسان انگ اکر کي وڌايون (i) لاءِ استعمال ڪيو ۽ ڪردار کي انڊيڪس (j) کي 0. ۾ وجهو ، ٻي صورت ۾ ، صرف اسيٽ j. پڇاڙيءَ ۾ ، جيڪڏھن ٻئي گرفتاري س areي ختم ٿي وڃن ، ته پوءِ اسان واپس اچي سچو ، ٻي غلط.

ڪوڊ

چيڪ ڪرڻ لاءِ C ++ ڪوڊ جيڪڏهن ٻه اسٽرنگ ارريز برابر آهن Leetcode Solution

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

bool arrayStringsAreEqual(vector<string>& word1, vector<string>& word2) {
    int i1 = 0, j1 = 0, i2 = 0, j2 = 0;
    while(true){
        if(word1[i1][j1] != word2[i2][j2]) return false;
        if(j1 == word1[i1].size()-1)i1++, j1 = 0;
        else j1++;
        if(j2 == word2[i2].size()-1)i2++, j2 = 0;
        else j2++;
        if(i1 == word1.size() && i2 == word2.size())
            return true;
        else if(i1 == word1.size() || i2 == word2.size())
            return false;
    }
}

int main() {
  vector<string> word1 = {"ab", "c"};
  vector<string> word2 = {"a", "bc"};
  cout<<(arrayStringsAreEqual(word1, word2) ? "true" : "false");
  return 0;
}
true

جاوا ڪوڊ چيڪ لاءِ ڇا ٻه اسٽرنگ جون قطارون برابر آهن Leetcode Solution

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

class Main
{
  public static boolean arrayStringsAreEqual(String[] word1, String[] word2) {
        int i1 = 0, j1 = 0, i2 = 0, j2 = 0;
        while(true){
            if(word1[i1].charAt(j1) != word2[i2].charAt(j2)) return false;
            if(j1 == word1[i1].length()-1){i1++; j1 = 0;}
            else j1++;
            if(j2 == word2[i2].length()-1){i2++; j2 = 0;}
            else j2++;
            if(i1 == word1.length && i2 == word2.length)
                return true;
            else if(i1 == word1.length || i2 == word2.length)
                return false;
        }
    }

  public static void main (String[] args) throws java.lang.Exception
  {
    String[] word1 = {"ab", "c"};
    String[] word2 = {"a", "bc"};
    System.out.print((arrayStringsAreEqual(word1, word2) ? "true" : "false"));
    return 0;
  }
}
true

پيچيدگي تجزيي

وقت جي پيچيدگي

اي (منٽ (اين ، ايم)) ، ڇاڪاڻ ته اسين نن characterڙي اسٽرنگ جي هر ڪردار مان ويندا آهيون. هتي اين ۽ ايم پهرين ترتيب ۽ پهرين صف ۾ براه راستن جي تعداد جي نمائندگي ڪن ٿا.

خلائي پيچيدگي

اي (1) ، ڇاڪاڻ ته اسان متغير جي مستقل تعداد استعمال ڪئي.