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;
        }
    }
  • 相关阅读:
    威尔逊定理  知识点
    费马小定理及推论 知识点
    勾股定理和勾股数
    hdu6441 Find Integer (费马大定理)
    费马大定理
    莫队算法 [国家集训队]小Z的袜子
    R49 A-D D图有向有环图
    #505 1&2 A-C 后面未完成
    stack 的一些用法
    bzoj 2844 albus就是要第一个出场 异或和出现次数 线性基
  • 原文地址:https://www.cnblogs.com/yony/p/2875062.html
Copyright © 2011-2022 走看看