广东财经大学Java2012-2013上学期考试.docVIP

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
广东财经大学Java2012-2013上学期考试

广 东 财 经 大 学 试 题 纸 _2012—2013_学年第__2 _学期 考试时间共 300 分钟 课程名称 _ 面向对象程序设计 课程代码 110154 课程班号 12计算机实验班 共6页 ---------------------------------------------------------------------------------------------------------------------------------------- 一、算法设计与分析 一个长度为L(L≥1)的升序序列S,处在第表示不超过的最大整数)个位置的数称为S的中位数。例如,若序列S1=(11, 13, 15, 17, 19),则S1的中位数是15。两个序列的中位数是含它们所有元素的升序序列的中位数。例如,若S2=(2, 4, 6, 8, 20),则S1和S2的中位数是11。现有两个等长升序序列A和B,试设计一个在时间方面尽可能高效的算法,找出两个序列A和B的中位数。要求:   (1)给出算法的基本设计思想。(2)分析你所设计算法的时间复杂度。,得5分,因为若,你的程序在你的机器上运行,在你可以接受的时间内,程序得不到结果;若你的算法时间复杂度为,得10分,因为这种程序在你可以接受的时间内(如几分钟或十几分钟)可以得到结果;若你的算法时间复杂度小于,得20分,因为这种程序可以在不到千分之一秒的时间得到结果。 二、程序填空 以下是求解八皇后问题的递归程序,其中queensRecursion方法输出一个可行解,queensRecursionAllSolutions方法输出所有可行解。请仔细阅读程序,并参考程序中的注释填空。 //求解八皇后问题的递归算法 public class QueensRecursion { /** * @param args */ private int[][] queens=new int[8][8]; private int solutions;//用于统计解的个数 public QueensRecursion() { //构造函数,对queens初始化 int i,j; for (i=0;i8;i++) for (j=0;j8;j++) queens[i][j]=0; solutions=0; } public int getSolutions() { return solutions; } public void printQueens() { //输出矩阵queens int i,j; for (i=0;iqueens.length;i++) { for (j=0;jqueens[i].length;j++) System.out.print(queens[i][j]+ );//输出一行 System.out.println();//行末换行 } System.out.println();//输出完一个矩阵后空一行 } public boolean positionIJOk(int i, int j) { //检测在queens数组中位置(i,j)是否合法 int m,n; boolean ok=true; for (m=i-1;m=0;m--) {//垂直上方 if (queens[m][j]==1) ok=false; } for (m=i-1,n=j-1;m=0 n=0; (1) ) {//左上方 if (queens[m][n]==1) ok=false; } for (m=i-1,n=j+1;m=0 n8; (2) ) {//右上方 if (queens[m][n]==1) ok=false; } return ok; } public boolean queensRecursion(int i) {//求解八皇后问题,输出一个可行解 int j; if (i==8) { printQueens(); solutions++; ; } else { for (j=0;j8;j++) { if (positionIJOk(i,j)) { queens[i][j]=1; if (

文档评论(0)

cj80011 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档