An warware: java stack char

Sabuntawa na karshe: 06/19/2023

tari char Stacks wani muhimmin tsarin bayanai ne a cikin kimiyyar kwamfuta, yana ba da damar yin aiki mai inganci da adanawa. A cikin Java, tarin haruffa na iya zama da amfani musamman wajen warware takamaiman matsalolin shirye-shirye kamar sarrafa kirtani, rarrabawa, da kuma nazarin ma'amala. A cikin wannan labarin, za mu ga yadda ake ƙirƙira da aiki tare da tarin haruffa a cikin Java, yayin da kuma bincika dakunan karatu da ayyuka masu alaƙa waɗanda ke sauƙaƙe warware matsala tare da tarin halaye.

Tari shine tsarin bayanan Ƙarshe, Na Farko (LIFO), wanda ke nufin cewa abu na ƙarshe da aka ƙara a cikin tarin shine farkon wanda za'a cire. Wannan ɗabi'a na da amfani a yawancin mahallin shirye-shirye, kamar daidaita bayanan baƙaƙe, tantance maganganu, ko ma gano tarin kira na shirin. Bari mu zurfafa cikin aiwatarwa da amfani da tarin haruffa a Java.

Ƙirƙirar Tarin Haruffa

A cikin Java, da tari ajin bayar da java.util ana iya amfani da fakitin don ƙirƙirar tarin haruffa. Ga misali mai sauƙi na yadda ake ayyana tarin haruffa da aiwatar da ayyuka na yau da kullun kamar turawa, fiɗa, da leƙen asiri:

import java.util.Stack;

public class CharStack {
    public static void main(String[] args) {
        Stack<Character> stack = new Stack<>();

        // Push characters onto the stack
        stack.push('A');
        stack.push('B');
        stack.push('C');

        // Pop and peek characters from the stack
        System.out.println(stack.pop());
        System.out.println(stack.peek());
    }
}

Amfani da Tarin Hali don Magance Matsaloli

Tarin haruffa suna da amfani musamman don magance matsalolin da suka haɗa da sarrafa kirtani ko buƙatar bin diddigin abubuwan gida. A matsayin misali, yi la'akari da matsalar bincika ko layin da aka bayar na baƙaƙe ya ​​daidaita.

Ana ɗaukar kirtani daidaitacce idan:

  • Kowane baka na buɗewa yana da daidaitaccen baka na rufewa
  • Biyu na baka suna gida sosai

Za mu iya amfani da tarin hali don magance wannan matsala yadda ya kamata tare da matakai masu zuwa:

1. Ƙaddamar da fanko na haruffa
2. Maɗaukaki ta kowane hali a cikin kirtan shigarwa
3. Idan harafin baƙar magana ce mai buɗewa, tura shi kan tari
4. Idan harafin baƙaƙe ne na rufewa, duba idan tari ɗin ba komai a ciki sannan a bugo babban kashi idan ya kasance daidaitaccen baka na buɗewa.
5. Idan tari ba fanko ba bayan sarrafa duk haruffa, kirtani ba ta da daidaituwa

Ga lambar Java don hanyar da ke sama:

public static boolean isBalanced(String input) {
    Stack<Character> stack = new Stack<>();

    for (char c : input.toCharArray()) {
        if (c == '(' || c == '{' || c == '[') {
            stack.push(c);
        } else if (c == ')' || c == '}' || c == ']') {
            if (stack.isEmpty()) {
                return false;
            }

            char top = stack.pop();
            if ((c == ')' && top != '(') || (c == '}' && top != '{') || (c == ']' && top != '[')) {
                return false;
            }
        }
    }

    return stack.isEmpty();
}

Ta hanyar fahimta da amfani da tsarin bayanan tarin, za mu iya magance matsalolin shirye-shirye yadda ya kamata kamar waɗanda suka haɗa da magudin kirtani, ɓarna, da kuma bincike na haɗin gwiwa. Haka kuma, tare da Stack class samuwa a cikin java.util kunshin, aiwatarwa da yin amfani da tarin haruffa a Java ya zama kyakkyawan aiki.

Shafi posts: