国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

括號(hào)配對(duì)問(wèn)題

2019-11-15 00:44:11
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
括號(hào)配對(duì)問(wèn)題

描述:

   現(xiàn)在,有一行括號(hào)序列,請(qǐng)你檢查這行括號(hào)是否配對(duì)。

輸入:
第一行輸入一個(gè)數(shù)N(0<N<=100),表示有N組測(cè)試數(shù)據(jù)。后面的N行輸入多組輸入數(shù)據(jù),每組輸入數(shù)據(jù)都是一個(gè)字符串S(S的長(zhǎng)度小于10000,且S不是空串),測(cè)試數(shù)據(jù)組數(shù)少于5組。數(shù)據(jù)保證S中只含有"[","]","(",")"四種字符
輸出:
每組輸入數(shù)據(jù)的輸出占一行,如果該字符串中所含的括號(hào)是配對(duì)的,則輸出Yes,如果不配對(duì)則輸出No
樣例輸入:
3[(])(])([[]()])
樣例輸出:
NoNoYes

import java.util.Scanner;public class No2 {    PRivate String checkout(String str) {        try {            StringBuffer asb = new StringBuffer(str);  // 模擬棧A            StringBuffer bsb = new StringBuffer();   // 模擬棧B            int length = asb.length();            while (length > 0) {                // 遇右括號(hào),移A入B                if (asb.charAt(length - 1) == ')'                        || asb.charAt(length - 1) == ']') {                    bsb.append(asb.charAt(length - 1));                    asb.deleteCharAt(length - 1);                    length = asb.length();                    continue;                }                // 遇左括號(hào),若無(wú)法與B中棧頂元素合法匹配,則序列非法;若合法匹配,移A移B                if (asb.charAt(length - 1) == '(') {                    if (bsb.charAt(bsb.length() - 1) != ')') {                        return "No";                    } else {                        asb.deleteCharAt(asb.length() - 1);                        bsb.deleteCharAt(bsb.length() - 1);                        length = asb.length();                        continue;                    }                }                if (asb.charAt(length - 1) == '[') {                    if (bsb.charAt(bsb.length() - 1) != ']') {                        return "No";                    } else {                        asb.deleteCharAt(asb.length() - 1);                        bsb.deleteCharAt(bsb.length() - 1);                        length = asb.length();                        continue;                    }                }            }            if (bsb.length() == 0) {                return "Yes";            }        } catch (RuntimeException e) {        }        return "No";    }    public static void main(String args[]) throws Exception {        try {            Scanner cin = new Scanner(System.in);            int num = cin.nextInt();            String[] result = new String[num];            No2 no2 = new No2();            for (int i = 0; i < num; i++) {                String str = cin.next();                result[i] = no2.checkout(str);            }            for (int i = 0; i < num; i++) {                System.out.println(result[i]);            }        } catch (RuntimeException e) {        }    }}


發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 通许县| 永修县| 积石山| 车致| 依兰县| 太仆寺旗| 理塘县| 宁津县| 甘洛县| 和政县| 阜平县| 铜陵市| 儋州市| 鹤山市| 武宣县| 临颍县| 新绛县| 班戈县| 汉寿县| 云和县| 区。| 中牟县| 桦甸市| 长武县| 松江区| 定日县| 张家川| 龙泉市| 南昌市| 宁乡县| 潮州市| 日土县| 潼关县| 合阳县| 宜城市| 东阿县| 个旧市| 镇康县| 曲周县| 揭东县| 高陵县|