蓝桥杯java历年真题与答案整理(共129道题目与答案)

上传人:l**** 文档编号:134481300 上传时间:2020-06-05 格式:DOC 页数:242 大小:1.67MB
返回 下载 相关 举报
蓝桥杯java历年真题与答案整理(共129道题目与答案)_第1页
第1页 / 共242页
蓝桥杯java历年真题与答案整理(共129道题目与答案)_第2页
第2页 / 共242页
蓝桥杯java历年真题与答案整理(共129道题目与答案)_第3页
第3页 / 共242页
蓝桥杯java历年真题与答案整理(共129道题目与答案)_第4页
第4页 / 共242页
蓝桥杯java历年真题与答案整理(共129道题目与答案)_第5页
第5页 / 共242页
点击查看更多>>
资源描述

《蓝桥杯java历年真题与答案整理(共129道题目与答案)》由会员分享,可在线阅读,更多相关《蓝桥杯java历年真题与答案整理(共129道题目与答案)(242页珍藏版)》请在金锄头文库上搜索。

1、1.字符排序算法是这样的,如果给定N个不同字符,将这N个字符全排列,最终的结果将会是N!种。如:给定 A、B、C三个不同的字符,则结果为:ABC、ACB、BAC、BCA、CAB、CBA一共3!=3*2=6种情况。package Question1_9;import java.util.Scanner;import java.util.Vector;public class Question1 public static long count=0;private void fullPermutation(Vectorsourse, Vector result) if(sourse.size()=

2、0)for (int i = 0; i result.size(); i+) System.out.print(result.elementAt(i);System.out.print(n);count+;return;for (int i = 0; i sourse.size(); i+) Vectortsourse=new Vector(sourse);Vectortresult=new Vector(result);tresult.add(sourse.elementAt(i);tsourse.remove(i);new Question1().fullPermutation(tsour

3、se, tresult);public static void main(String args) Scanner scanner=new Scanner(System.in);int n=scanner.nextInt();Vector sourse=new Vector();Vector result=new Vector();for (int i = 0; i n; i+) sourse.add(char)(A+i);new Question1().fullPermutation(sourse, result);System.out.println(Question1.count);方法

4、二:import java.util.ArrayList; import java.util.Iterator; import java.util.LinkedHashSet; import java.util.List; import java.util.Scanner; import java.util.Set; public class Demo03 / 去掉重复元素,放入lis public static void removeDuplicate(String s,Set lis) for(char x:s.toCharArray() lis.add(x); / 为方便操作 将 set

5、s 转 lis public static void convert(List lis,Set sets) Iterator iter = sets.iterator(); while(iter.hasNext() lis.add(iter.next(); / 检测符合条件的元素组合 public static void check(Set sets) List lis = new ArrayList(); convert(lis,sets); / 为方便操作 将 sets 转 lis StringBuffer sb = new StringBuffer(); for(int i=0;ilis

6、.size()-2;i+) for(int j=i+1;j+1lis.size();j+) / 向后添加两位,所以 j+1lis.size() for(int k=j+1;klis.size();k+) sb.append(lis.get(i); sb.append(lis.get(j); sb.append(lis.get(k); System.out.println(sb); / 输出组合 sb.setLength(0); / 清空 public static void main(String args) Scanner scan = new Scanner(System.in); Sys

7、tem.out.println(输入串(不大于30个字符)。); String s = scan.nextLine(); Set sets = new LinkedHashSet(); removeDuplicate(s,sets); / 去掉重复元素,放入lis check(sets); / 检测符合条件的元素组合 运行结果:输入串(不大于30个字符)。 abcd abc abd acd bcd 2.串的简单处理串的处理在实际的开发工作中,对字符串的处理是最常见的编程任务。本题目即是要求程序对用户输入的串进行处理。具体规则如下:1.把每个单词的首字母变为大写。2.把数字与字母之间用下划线字符

8、(_)分开,使得更清晰3.把单词中间有多个空格的调整为1个空格。例如:用户输入:you and me what cpp2005program则程序输出:You And Me What Cpp_2005_program用户输入:this is a 99cat则程序输出:This Is A 99_cat我们假设:用户输入的串中只有小写字母,空格和数字,不含其它的字母或符号。每个单词间由1个或多个空格分隔。假设用户输入的串长度不超过200个字符。package Question1_9;import java.util.Scanner;import java.util.Vector;public cl

9、ass Question2 public static void main(String args) Scanner scanner=new Scanner(System.in);String string=scanner.nextLine();Vectorvector=new Vector();for (int i = 0; i string.length(); i+) vector.add(string.charAt(i);try int index=0;while (index=a&vector.elementAt(index)=a&vector.elementAt(index)=a&v

10、ector.elementAt(index)=0&vector.elementAt(index-1)=a&vector.elementAt(index-1)=0&vector.elementAt(index)=9)vector.add(index, _);index+;index+;for (int i = 0; i vector.size(); i+) System.out.print(vector.elementAt(i);System.out.println(); catch (ArrayIndexOutOfBoundsException e) / TODO: handle exception运行结果:you and me what cpp2005programYou And Me What Cpp_2005_program方法二:import java.util.Scanner;import java.util.r

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 工作范文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号