博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
句子逆序,近义词维护,数字颠倒,蛇形矩阵
阅读量:4659 次
发布时间:2019-06-09

本文共 4313 字,大约阅读时间需要 14 分钟。

一、句子逆序 描述:  将一个英文语句以单词为单位逆序排放。例如“I am a boy”,逆序排放后为“boy a am I”所有单词之间用一个空格隔开,语句中除了英文字母外,不再包含其他字符
接口说明/** * 反转句子 *  * @param sentence 原句子 * @return 反转后的句子 */public String reverse(String sentence);
1 public class StringReverse { 2 public static void main(String[] args) { 3     Scanner sc=new Scanner(System.in); 4     System.out.println("请输入需要逆序排放的英文语句:"); 5     String word=sc.nextLine(); 6     reverse(word); 7 } 8  9 public static void reverse(String word) {10 11     String regex=" ";12     String[] strArray=word.split(regex);13     for(int x=strArray.length-1;x>=0;x--){14     System.out.print(strArray[x]+" ");15     }16     17 }18 19 }

 

二、近义词维护给定接口,设置两个单词相互近义。近义词具有相互传递性,如果A和B为近义词,B和C是近义词,那么A、B、C都为近义词。要求提供接口,查询给定的两个但是是否是近义词关系。并且能提供接口清除所有的近义词关系。接口说明/** * 设置2个单词为近义词 * @param word1 单词一 * @param word2 单词二 * @return 0为成功,-1为失败或其他异常 */public int setSynonyms(String word1, String word2)/** *判断2个单词是否为近义词(同一单词视为近义词) *@param word1 单词一 *@param word2 单词二 *@return 为近义词返回true,否则返回false */public boolean isSynonyms(String word1, String word2)/** * 清除单词之间的近义词关系 */public void clearRelations()
1 public class Synonyms { 2     Set
set=new HashSet
(); 3 public static void main(String[] args) { 4 Synonyms sy = new Synonyms(); 5 sy.setSynonyms("1", "2"); 6 sy.setSynonyms("2", "4"); 7 sy.setSynonyms("4", "6"); 8 //sy.clearRelations(); 9 System.out.println(sy.isSynonyms("1", "6"));10 }11 12 public void setSynonyms(String string, String string2){ 13 set.add(string);14 set.add(string2);15 }16 17 boolean isSynonyms(String string, String string2) {18 boolean flag = false;19 if (string.equals(string2)) {20 flag= true;21 }else if (set.contains(string) && set.contains(string2)) {22 flag = true;23 }else{24 flag=false;25 } 26 27 28 return flag;29 30 }31 public void clearRelations(){32 set.clear();33 }34 }
三、数字颠倒 描述:  输入一个整数,将这个整数以字符串的形式逆序输出,程序不考虑复数的情况,若数字含有0,则逆序形式也含有0,如输入为100,则输出为001接口说明/** * 反转句子 *  * @param sentence 原句子 * @return 反转后的句子 */public String reverse(int number);
1 public class ReverseNum { 2 public static void main(String[] args) { 3     Scanner sc=new Scanner(System.in); 4     System.out.println("请输入数据的位数:"); 5     int n=sc.nextInt(); 6     System.out.println("请输入一个"+n+"位数据: "); 7     int number=sc.nextInt(); 8      9     int[] arr=new int[n];10     int index=0;11     12     while(number>0){13         arr[index]=number%10;14         index++;15         number/=10;16     }17     for(int x=0;x
四、蛇形矩阵 描述:  蛇形矩阵是由1开始的自然数依次排列成的一个矩阵上三角形。输入正整数N(N不大于100)输出输出一个N行的蛇形矩阵。样例输入:5样例输出:1  3  6  10 152  5  9  14 164  8  13 17 227  12 18 21 2311 19 20 24 25接口说明/** *  * 输入一个不大于100的数字,产生蛇形矩阵字符串 *  * 例如输入5时,产生如下蛇形矩阵输出字符串,每个数字之间用空格分开 * 1  3  6  10 15 * 2  5  9  14 16 * 4  8  13 17 22 * 7  12 18 21 23 * 11 19 20 24 25 *  *  * @param number 不大于100的数字 * @return 蛇形矩阵字符串(需要控制换行) */public String getResult(int number);
1 public class SnakeNum { 2     public static void main(String[] args) { 3         SnakeNum sn = new SnakeNum(); 4         Scanner sc = new Scanner(System.in); 5         System.out.println("请输入小于100的正整数:"); 6         int n = sc.nextInt(); 7         sn.getResult(n); 8     } 9 10     public void getResult(int number) {11         int arr[][] = new int[number][number];12         int k = 1;13         for (int i = 0; i < number; i++) {14             int t = i;15             for (int j = 0; j <= i; j++) {16                 arr[t][j] = k;17                 k++;18                 t--;19             }20         }21 22         for (int x = number - 1; x > 0; x--) {23             for (int y = 1; y <= x; y++) {24                 if (x % 2 == 0) {25                     arr[y + number - x - 1][number - y] = k++;26                 } else {27                     arr[number - y][y + number - x - 1] = k++;28                 }29             }30         }31 32         for (int i = 0; i < number; i++) {33 34             for (int j = 0; j < number; j++) {35 36                 System.out.print(arr[i][j] + "\t");37             }38             System.out.println();39         }40     }41 }

 

转载于:https://www.cnblogs.com/wamwf/p/4713527.html

你可能感兴趣的文章
JS中window.event事件使用详解
查看>>
ES6深入学习记录(一)class方法相关
查看>>
C语言对mysql数据库的操作
查看>>
INNO SETUP 获得命令行参数
查看>>
HTML5与CSS3权威指南之CSS3学习记录
查看>>
docker安装部署
查看>>
AVL树、splay树(伸展树)和红黑树比较
查看>>
多媒体音量条显示异常跳动
查看>>
运算符及题目(2017.1.8)
查看>>
ssh自动分发密匙脚本样板
查看>>
转 小辉_Ray CORS(跨域资源共享)
查看>>
Linux安装postgresql
查看>>
MyBatis启动:MapperStatement创建
查看>>
【 全干货 】5 分钟带你看懂 Docker !
查看>>
[转]优化Flash性能
查看>>
popStar手机游戏机机对战程序
查看>>
lambda表达式树
查看>>
二次注入原理及防御
查看>>
会话记住已登录功能
查看>>
Linux内核分析——可执行程序的装载
查看>>