JAVA-用栈机制实现单词逆序排列

就是IO那一段还没学到。

之前的PUCH,POP,STRING和CHAR的关系搞得懂了。

学到一个定位STRING当中CHAR的转换函数。

 char = String.charAt(x)

  1 import java.io.*;
  2 
  3 
  4 class stackString
  5 {
  6     private int maxSize;
  7     private char[] stackX;
  8     private int top;
  9     
 10     public stackString(int s)
 11     {
 12         maxSize = s;
 13         stackX = new char[maxSize];
 14         top = -1;
 15     }
 16     public void push(char j)
 17     {
 18         stackX[++top] = j;
 19     }
 20     public char pop()
 21     {
 22         return stackX[top--];
 23     }
 24     public char peek()
 25     {
 26         return stackX[top];
 27     }
 28     public boolean isEmpty()
 29     {
 30         return (top == -1);
 31     }
 32     public boolean isFull()
 33     {
 34         return (top == maxSize - 1);
 35     }
 36 }
 37 class Reverser
 38 {
 39     private String input;
 40     private String output;
 41     
 42     public Reverser(String in)
 43     {
 44         input = in;
 45     }
 46     public String doRev()
 47     {
 48         int stackSize = input.length();
 49         stackString stackStringRev = new stackString(stackSize);
 50         
 51         for(int i = 0; i < stackSize; i++)
 52         {
 53             char charInString = input.charAt(i);
 54             stackStringRev.push(charInString);
 55         }
 56         output = "";
 57         while(!stackStringRev.isEmpty())
 58         {
 59             char ch = stackStringRev.pop();
 60             output = output + ch;
 61         }
 62         return output;
 63         
 64     }
 65     
 66 }
 67 public class StackApp {
 68 
 69     /**
 70      * @param args
 71      */
 72     public static void main(String[] args) throws IOException {
 73         // TODO Auto-generated method stub
 74         String input, output;
 75         
 76         while(true)
 77         {
 78             System.out.print("Enter a string: ");
 79             System.out.flush();
 80             input = getString();
 81             if(input.equals(""))
 82                 break;
 83             
 84             Reverser testStringRev = new Reverser(input);
 85             output = testStringRev.doRev();
 86             System.out.println("Reversed : " + output);
 87             
 88             
 89         }
 90 
 91     }
 92     public static String getString() throws IOException
 93     {
 94         InputStreamReader isr = new InputStreamReader(System.in);
 95         BufferedReader br = new BufferedReader(isr);
 96         String s = br.readLine();
 97         return s;
 98         
 99     }
100 
101 }

 

转载于:https://www.cnblogs.com/aguncn/archive/2013/05/03/3056992.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/494119.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Android自定义实现FlowLayout

实现FlowLayout 何为FlowLayout&#xff0c;如果对Java的Swing比较熟悉的话一定不会陌生&#xff0c;就是控件根据ViewGroup的宽&#xff0c;自动的往右添加&#xff0c;如果当前行剩余空间不足&#xff0c;则自动添加到下一行。有点所有的控件都往左飘的感觉&#xff0c;第一…

【重磅】马斯克遇终极麻烦:被起诉欺诈罪 或丢掉CEO职位 特斯拉暴跌约13%

参考&#xff1a;CNBC、Bloomberg编译&#xff1a;网易智能编辑&#xff1a;丁广胜参与&#xff1a;小小美国当地时间周四&#xff0c;法庭的文件显示特斯拉电动汽车公司首席执行官伊隆马斯克(Elon Musk)已被美国证券交易委员会(SEC)以欺诈罪起诉。与特斯拉关系密切的消息人士透…

《麻省理工科技评论》:2018年18大科技趋势,2017年7大失败技术

来源&#xff1a;科技周摘要&#xff1a;2018 年伊始&#xff0c;许多科技大势仍在继续&#xff0c;正如比尔盖茨所说&#xff0c;“大多数人高估了某种技术的短期价值&#xff0c;低估了其长期价值。”同样&#xff0c;大多数的年度预测会高估了一年内一些事件发生的可能性&am…

Android实现支持缩放平移图片

本文主要用到了以下知识点 MatrixGestureDetector 能够捕捉到长按、双击ScaleGestureDetector 用于检测缩放的手势 自由的缩放 需求&#xff1a;当图片加载时&#xff0c;将图片在屏幕中居中&#xff1b;图片宽或高大于屏幕的&#xff0c;缩小至屏幕大小&#xff1b;自由对图…

放麦子

题意&#xff1a; 国际象棋&#xff0c;一共64个方格&#xff0c;第一个格子里放一粒麦子&#xff0c;第二个放2粒&#xff0c;第三个放4粒&#xff0c;第四个放8粒。。。。。&#xff08;后面的数字是前面的两倍&#xff09; 求放满64个格子&#xff0c;一共需要多少粒麦子。 …

Material Design风格登录注册

本文实现了以下功能 完整的代码和样例托管在Github当接口锁定时&#xff0c;防止后退按钮显示在登录Activity 上。自定义 ProgressDialog来显示加载的状态。符合材料设计规范。悬浮标签&#xff08;floating labels&#xff09;&#xff08;来自设计支持库&#xff09;用户表单…

英特尔反驳质疑:芯片供应充足、10nm量产没问题

来源&#xff1a;华尔街见闻摘要&#xff1a;英特尔称2018年会将资本支出增加10亿美元&#xff0c;至总额创纪录的150亿美元&#xff1b;CEO称&#xff0c;个人电脑需求意外回升&#xff0c;但有足够供应满足市场&#xff0c;有望达成全年营收目标&#xff0c;股价涨近4%。竞争…

RecyclerView拖拽排序和滑动删除实现

效果图 如何实现 那么是如何实现的呢&#xff1f;主要就要使用到ItemTouchHelper &#xff0c;ItemTouchHelper 一个帮助开发人员处理拖拽和滑动删除的实现类&#xff0c;它能够让你非常容易实现侧滑删除、拖拽的功能。 实现的代码非常简单我们只需要两步&#xff1a; 实例化…

马斯克刚刚宣布辞去特斯拉董事会职务,仍然担任CEO

来源&#xff1a;大数据文摘编译&#xff1a;蒋宝尚据悉&#xff0c;当地时间周六&#xff0c;马斯克辞去特斯拉董事会主席一职&#xff0c;并且支付2000万美元罚款。以表示对美国证券交易委员会(SEC)指控的回应。SEC的指控来源于马斯克8月7日的一篇推文。推文中&#xff0c;他…

JavaScript 实现 GriwView 单列全选

在 GridView 里有一系列的 Checkbox &#xff0c;要实现对其全选或全不选。开始在网上找了&#xff0c;但是参考的代码会全选 GridView 里所有的 Checkbox &#xff0c;而我要的是单列全选。如图&#xff1a; 审核和权限是要分开的。 我自己写了 JavaScript 代码&#xff0c;贴…

自然语言处理(NLP)前沿进展报告

来源&#xff1a;专知摘要&#xff1a;2018年9 月 9 日-14 日&#xff0c;DeepMind主办的Deep Learning Indaba 2018 大会在南非斯泰伦博斯举行。会上&#xff0c;斯坦陵布什大学Herman Kamper和AYLIEN的Sebastian Ruder等专家做了《自然语言处理前言进展》的报告。报告首先探讨…

Android下利用Bitmap切割图片

在自己自定义的一个组件中由于需要用图片显示数字编号&#xff0c;而当前图片就只有一张&#xff0c;上面有0-9是个数字&#xff0c;于是不得不考虑将其中一个个的数字切割下来&#xff0c;需要显示什么数字&#xff0c;只需要组合一下就好了。 下面是程序的关键代码&#xff…

两种不同的人工智能观:工程观点和科学观点

来源&#xff1a;人机与认知实验室作者按&#xff1a;人工智能是作为工程还是科学&#xff0c;这个问题是一个很严肃的问题&#xff0c;如果从工程技术角度来看人工智能&#xff0c;那么认知科学尤其是认知心理学、神经生理学对人类这样的生物智能的原理性认识&#xff0c;就不…

BaseActivity与BaseFragment的封装

这篇博客主要是从BaseActivity与BaseFragment的封装开始&#xff0c;总结我们在实战开发中关于Fragment的注意事项以及心得体会。 先看以下效果图&#xff1a; 这里模拟的是用户登录模块&#xff0c;你可能会说&#xff0c;很普通的效果嘛&#xff0c;这有啥。嘿嘿&#xff0c…

学界 | 史上最强GAN图像生成器,Inception分数提高两倍

来源&#xff1a;Openreview,机器之心摘要&#xff1a;ICLR 2019 大会即将在明年 5 月 6 日于美国举行&#xff0c;9 月 27 日论文提交截止时间已过。本次大会共接收到了 1591 篇论文的投稿&#xff0c;数量相较今年的 1000 篇提升了近 60%。在双盲评审时&#xff0c;人们可以在…

一图理解腾讯本次组织结构重大变革的方向和目的

作者&#xff1a;刘锋 互联网进化论作者 计算机博士2018年9月30日&#xff0c;腾讯宣布公司架构调整&#xff0c;在原有七个事业群的基础上进行重组整合&#xff0c;形成新的6个事业群&#xff0c;在本次调整中&#xff0c;腾讯新成立了云与智慧产业事业群&#xff08;CSIG&…

Android实现边缘凹凸的View

转载 最近做项目的时候遇到一个卡劵的效果&#xff0c;由于自己觉得用图片来做的话可以会出现适配效果不好&#xff0c;再加上自己自定义view方面的知识比较薄弱&#xff0c;所以想试试用自定义View来实现。但是由于自己知识点薄弱&#xff0c;一开始居然想着用画矩形来设置边…

【报告解读】126个国家、29个行业、36位高管认为AI的未来这么走

来源&#xff1a;网易智能人工智能&#xff08;AI&#xff09;已经使早期采用它的制造商能够更好地协调分析、商业智能(BI)、移动性和实时监控&#xff0c;以实现更快的营收增长&#xff0c;并比同行更快地成长壮大。如今&#xff0c;最顶级的18%的AI采用者将超过70%的精力投入…

自定义view实现水波纹效果

水波纹效果&#xff1a; 1.标准正余弦水波纹&#xff1b; 2.非标准圆形液柱水波纹&#xff1b; 虽说都是水波纹&#xff0c;但两者在实现上差异是比较大的&#xff0c;一个通过正余弦函数模拟水波纹效果&#xff0c;另外一个会运用到图像的混合模式&#xff08;PorterDuffXf…

“人机耦合”变成“人机大战” AI同传离成熟还有多远

来源&#xff1a;科学网9月21日&#xff0c;一篇指责科大讯飞“AI同传造假”的文章引发了社会广泛关注&#xff0c;文中知乎用户、同传译员Bell Wang表示&#xff0c;在日前举行的2018创新与新兴产业发展国际会议上&#xff0c;科大讯飞在现场和直播中展示的“AI同传”&#xf…