知识大全 JAVA代码概述

Posted 情人

篇首语:书籍是横渡时间大海的航船。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 JAVA代码概述相关的知识,希望对你有一定的参考价值。

情人碰面的问题:JAVA代码概述  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  /*  * 8情人问题   *  * 问题描述   * 在一个8×8的棋盘里放置8个情人 要求每个情人两两之间不相冲突  *(在每一横列 竖列 斜列只有一个情人)   *  * 数据表示   * 用一个 位的 进制数表示棋盘上情人的位置   * 比如 表示   *    第 列情人在第 个位置  *    第 列情人在第 个位置  *    第 列情人在第 个位置  *      *    第 列情人在第 个位置  *  * 循环变量从 加到 ( 进制数)的过程 就遍历了情人所有的情况  * 程序中用八进制数用一个一维数组 data[] 表示  *  * 检测冲突   *   横列冲突 data[i] == data[j]  *   斜列冲突 (data[i]+i) == (data[j]+j) 或者 (data[i] i) == (data[j] j)  *  * 好处   * 采用循环 而不是递规 系统资源占有少  * 可计算 n 情人问题  * 把问题线性化处理 可以把问题分块 在分布式环境下用多台计算机一起算   *  * ToDo   *  枚举部分还可以进行优化 多加些判断条件速度可以更快   *  输出部分可以修改成棋盘形式的输出  *  * @author cinc   *  */    public class Queen   int size;  int resultCount;    public void pute ( int size )   this size = size;  resultCount = ;  int data[] = new int[size];  int count; // 所有可能的情况个数  int i j;    // 计算所有可能的情况的个数  count = ;  for ( i= ; i<size ; i++ )   count = count * size;    // 对每一个可能的情况  for ( i= ; i<count ; i++ )   // 计算这种情况下的棋盘上情人的摆放位置 用 进制数表示  // 此处可优化  int temp = i;  for ( j= ; j<size ; j++ )   data [j] = temp % size;  temp = temp / size;    // 测试这种情况是否可行 如果可以 输出  if ( test(data) )  output( data );        /*  * 测试这种情况情人的排列是否可行  *  */  public boolean test( int[] data )   int i j;  for ( i= ; i<size ; i++ )   for ( j=i+ ; j<size ; j++ )   // 测试是否在同一排  if ( data[i] == data[j])  return false;  // 测试是否在一斜线  if ( (data[i]+i) == (data[j]+j) )  return false;  // 测试是否在一反斜线  if ( (data[i] i) == (data[j] j) )  return false;      return true;      /*  * 输出某种情况下情人的坐标  *  */  public void output ( int[] data )  int i;  System out print ( ++resultCount + : );  for ( i= ; i<size ; i++ )   System out print ( ( + i + + data[i] + );    System out println ();      //main()就是在这里   public static void main(String args[])   (new Queen()pute( );     cha138/Article/program/Java/JSP/201311/19303

相关参考

知识大全 用Java测试网络代码

用Java测试网络代码  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  网络代码被证明是很难进行完

知识大全 Java中调用本地代码

Java中调用本地代码  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Java中调用dll中本地

知识大全 Java代码运行器

Java代码运行器  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  importjavaawtBo

知识大全 Java Transaction API概述

JavaTransactionAPI概述  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!   引言 

知识大全 Java转换大写金额的代码

Java转换大写金额的代码  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  此代码根据网上搜集到的

知识大全 Java程序性能优化-代码调优

Java程序性能优化-代码调优  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!   代码调

知识大全 您的JAVA代码安全吗?

您的JAVA代码安全吗?  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  虽然客户仍然很关心您为他

知识大全 java中调用matlab代码

  MATLAB的最新版本b中新添了一个产品-MATLABBuilderforJava其实本来Matlab就有Java外部程序接口不过原来的接口只能在m文件中调用Java而无法在Java程序中调用Ma

知识大全 java获取当前日期时间代码

  获取当前时间和某个时间进行比较此时主要拿long型的时间值  方法如下  要使用javautilDate获取当前时间的代码如下代码如下   Datedate=newDate();  da

知识大全 java读取文本文件代码

java读取文本文件的方法有很多这个例子主要介绍最简单最常用的BufferedReader类    完整例子如下    packagenetchinaunixbloghzmtext;    impor