zoukankan      html  css  js  c++  java
  • OJ——华为编程题目:输入字符串括号是否匹配

    package t0815;
    /*
     * 华为编程题目:输入字符串括号是否匹配
     * 若都匹配输出为0,否则为1
     * 样例输入:Terminal user [name | number (1)]
     * 样例输出:0
     * Java版本
     */
    /*
     * 个人总结:
     * (1)语法上Java的输入Scanner使用
     * (2)char[] arr=mxf.toCharArray()的使用,将输入的字符串转成字符数组;这样就可以一个
     *     一个的遍历
     * (3)算法上,这里使用了经典的入栈和出栈的思想
     * 
     */
    
    import java.util.Scanner;
    import java.util.Vector;
    
    public class huawei_StringMatching {
        public static void main(String[] args){
            System.out.println("请按照规格输入字符串");
            Scanner ScStr=new Scanner(System.in);
            String sqy = ScStr.nextLine();    
            
            System.out.print(Check(sqy));        
        }
        public static int Check(String mxf){
            int count=0;
            int flag=1;
            char[] arr=mxf.toCharArray();    
            Vector<Character> vec=new Vector<Character>();
            for(int j=0;j<arr.length;j++){
                if(arr[j]=='(')
                    {vec.add(arr[j]);count++;} //入栈,并且计数加1
                if(arr[j]=='[')
                    {vec.add(arr[j]);count++;}//入栈,并且计数加1
                if(arr[j]==']'){
                    if(vec.elementAt(count-1)=='[')
                    {vec.remove(count-1);count--;}//出栈,并且计数减1
                }            
                if(arr[j]==')'){
                    if(vec.elementAt(count-1)=='(')
                        {vec.remove(count-1);count--;}////出栈,并且计数减1
                }
            }
            if(vec.isEmpty())
                flag=0;  // 如果为空,说明可以正确匹配
            return flag;
        }
        
        
    }

    结果:

    请按照规格输入字符串
    Terminal user [name | number (1)]
    0

  • 相关阅读:
    注解-案例
    注解(Annotation)
    适合新手看的超详细CentOS Linux 7 安装Tomcat8过程
    CentOS Linux 7 提示 lsof: 未找到命令
    解决MySql报错:1130
    Spring Boot 创建自定义的properties文件
    spring boot 使用Schedule创建轻量级定时任务
    4.Java数组模块
    3.IDEA开发工具
    2.java基础语法
  • 原文地址:https://www.cnblogs.com/snowwhite/p/4734304.html
Copyright © 2011-2022 走看看