zoukankan      html  css  js  c++  java
  • 栈应用实例单词逆序

    package com.study.dataStructure.linearList;
    
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStreamReader;
    
    //栈类
    public class StackX {
        private int maxSize;
        private char[] stackArray;
        private int top;
        
        public StackX(int max){
            stackArray = new char[max];
            top = -1;//空栈
        }
        
        public void push(char j){
            stackArray[++top] = j;
        }
        
        public char pop(){
            return stackArray[top--];
        }
        
        public char peek(){
            return stackArray[top];
        }
        
        public boolean isEmpty(){
            return top == -1;
        }
        
        public boolean isFull(){
            return top == (maxSize -1);
        }
        
    }
    
    //倒转字符串类
    class Reverse{
        private String input;
        private String output;
        
        public Reverse(String in){
            input = in;
        }
        
        //倒转字符串
        public String doRev(){
            int stackSize = input.length();
            StackX theStack = new StackX(stackSize);
            
            for(int i=0; i< stackSize; i++){
                theStack.push(input.charAt(i));
            }
            
            output = "";
            while(!theStack.isEmpty()){
                output += theStack.pop();
            }
            return output;
        }
    }
    package com.study.dataStructure.linearList;
    
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStreamReader;
    
    //字符串反转应用
    class ReverseApp{
        public static void main(String[] args) throws IOException{
            String input,output;
            
            while(true){
                System.out.println("请输入字符串");
                input = getString();
                if(input.equals("\r")) break;
                
                Reverse theReverser = new Reverse(input);
                output = theReverser.doRev();
                System.out.println("Reversed:"+output);
            }
            
            
        }
        
        public static String getString() throws IOException{
            InputStreamReader isr = new InputStreamReader(System.in);
            BufferedReader br = new BufferedReader(isr);
            String str = br.readLine();
            return str;
        }
    }
  • 相关阅读:
    Unity3D性能优化之美术资源制件规范
    Unity3D屏幕自适应
    Unity3D性能优化之内存科普篇
    面向对象设计和特性
    Uinty3D性能优化之贴图科普篇
    Learn OpenGL 概念(一)
    假如博客园也有年度总结报告……
    2019年修图汇总
    Python 小案例实战 —— 简易银行存取款查询系统
    Win10 + Anaconda + Tensorflow-cpu + Pycharm安装教程
  • 原文地址:https://www.cnblogs.com/yony/p/2875062.html
Copyright © 2011-2022 走看看