- 浏览: 103700 次
- 性别:
- 来自: 北京
最新评论
今天遇到一道算法题目,要求写出四阶拉丁矩阵中第一行为1,2,3,4的情形的其余三行的数,由于数目比较多,直接归纳写容易重复或者是遗忘,所以搞个程序输出就比较容易了。这个程序是我在网上找的例子后来又小改了下,贴出来备忘,呵呵
package com.test; public class Latin { private final int n; private int[][] m; private int count = 0; public Latin(int n) { this.n = n; m = new int[n][n]; fill(0); } public boolean check(int i, int j, int a) { for(int col=0; col<j; col++) if(m[i][col] == a) return false; for(int row=0; row<i; row++) if(m[row][j] == a) return false; return true; } public void fill(int i) { int row = i/n; int col = i%n; for(int a=1; a<=n; a++) { if(check(row, col, a)) { m[row][col] = a; if(i == n*n-1) { count++; System.out.println(count); for(int[] line : m) { for(int x : line) System.out.print(x); System.out.println(); } System.out.println("********"); } else fill(i+1); } } } public static void main(String[] args) { new Latin(4); } }
发表评论
-
PHP中的mb_convert_encoding与iconv函数介绍
2012-02-24 18:01 1020英文一般不会存在编码问题,只有中文数据才会有这个问题。比如你用 ... -
PHP实现动态生成饼状图、柱状图和折线图(转)
2011-08-29 17:59 20280PHP在图像操作方面的表 ... -
HTML&JavaScript实现全选小例子
2011-07-07 14:32 1766<html> <head> & ... -
Linux的计划任务
2011-07-01 11:10 841cron是一个linux下的 ... -
Linux Shell编程学习笔记
2011-06-28 10:31 1702其实作为命令语言互动式地解释和执行用户输入的命令只是S ... -
Suse查看版本
2011-04-14 11:10 48571. 在linux里查看补丁版本,一般的机器查看系统版本都是u ... -
BAT批处理文件与文件夹(zz)
2011-04-06 14:35 22631 建bat文件自动执行复制,删除命令。 例1:以下是 ... -
批处理中Copy与Xcopy的区别
2011-04-06 14:34 109811):copy不能在有子目录存 ... -
关于RPT的license的问题
2011-04-06 10:21 1276RPT的license一共有两种,一种是导入安装RPT时附带的 ... -
DB2的备份与恢复
2011-03-28 09:40 1138说明:在线增量备份前提: 1、更改数据库参数 logretai ... -
java启动相应的windows程序来打开文件
2011-03-07 11:49 10043这里有两种方法: 1.利用java运行时环境和windows系 ... -
HTTP代码整理供查询(转的)
2011-01-11 13:54 919代码 指示 2xx 成功 ... -
Java正则表达式(转)
2010-12-20 14:24 1027package example.regularexpres ... -
RollingFileAppender和DailyRollingFileAppender
2010-12-07 17:28 2081log4j提供RollingFileAppender和Dail ... -
(转载)DB2错误代码大全
2010-12-07 10:30 2218DB2错误代码/SQL返回码信 ... -
select的事件(转)
2010-11-25 16:10 1226onactivate 当对象设置为活动元素时触发。 onaf ... -
[转载] Java Timer和TimerTask详解
2010-11-16 09:55 9351.概览 Timer是一种定时 ... -
Timer的schedule()方法的正确使用
2010-09-20 16:08 1624timer.schedule(new MyTask(),lo ... -
DB2 常用命令(转)
2010-09-16 09:53 15091.1 启动DB2服务 db2start ... -
DB2资料搜集(转载)
2010-09-13 13:53 11021.使用db2cmd打开db2命令行 2.db2look - ...
相关推荐
《Java实现Pig Latin:语言转换的艺术》 在编程世界中,Pig Latin是一种常用于教学和娱乐的语言游戏,它通过特定的规则将英语单词转换为另一种形式。在这个专题里,我们将探讨如何使用Java来实现Pig Latin的转换...
2. **Java实现步骤**: - 分析输入的单词,检查第一个字母是否是元音。 - 如果是元音,直接在末尾添加"ay"。 - 如果是辅音,遍历单词找到第一个元音,将之前的所有辅音剪切并移到末尾,然后添加"ay"。 - 对于...
拉丁矩阵(Latin square)是一种特殊的方阵,其中每一行和每一列都包含从1到n的不同数字,并且每个数字在矩阵中只出现一次。在数学、统计学和计算机科学等领域,拉丁矩阵有着广泛的应用,例如在编码理论、设计实验和...
本文详细介绍了如何使用Java实现网页登录时使用的验证码功能。通过对图像的创建、字符随机生成、字体随机选择及干扰元素的添加等环节的深入探讨,不仅展示了实现验证码的技术细节,同时也增强了其安全性和实用性。...
Latin Modern Math是OpenType格式的数学字体,是Latin Modern字体家族中的一种免费打字机数学字体,对于Lua LaTX或XLaTX,unicode-math包提供了支持。拉丁现代数学Latin Modern Math字体完成了由Donald E. Knuth设计...
使用Pig-Latin实现的股票波动率计算 该项目使用Pig-Latin实现了约3000只纳斯达克股票的股票波动率计算。 该项目是纽约州立大学布法罗分校Vipin Chaudhary博士在CSE587-数据密集计算(2015年Spring)课程中实施的一...
创建一个`Cipher`对象,设置加密模式(如`Cipher.getInstance("AES/ECB/PKCS5Padding")`),然后使用`KeyGenerator`生成128位密钥,最后调用`doFinal`方法进行加密和解密。 2. **PHP的AES ECB加密解密**: PHP使用...
总的来说,Porter拉丁词干算法的Java实现是一种强大的工具,能够帮助开发者在处理拉丁语系文本时,有效地减少词汇的多样性和复杂性,提高文本处理的效率。理解和掌握这个算法的实现原理,对于进行自然语言处理相关的...
latin_hs.m 文件可能包含了一个基本的拉丁超立方采样算法的实现,"hs"可能表示豪斯霍尔德变换(Householder Transformation),这是一种线性变换,可用于构造拉丁超立方样本。 lhs_stein.m 文件则可能实现了Stein's...
在提供的标签中,“ltsam”、“latin_hyper_cube”和“latin_cube”是与LHS直接相关的关键词,它们分别指代了LHS方法、拉丁超立方体这一概念,以及可能与之相关的算法或程序库。而“mannerwqq”没有明确的解释,但...
很多编程语言和应用程序都支持ISOLatin-1字符集,如Java、Python、C++等。 ISOLatin-1字符集的优点包括: 1. 广泛支持:ISOLatin-1字符集被广泛支持于多种操作系统、编程语言和应用程序中。 2. 完整性:ISOLatin-1...
Cholesky分解是线性代数中的一种方法,用于将对称正定矩阵分解为一个下三角矩阵和其转置的乘积。在本情境中,Cholesky分解被用来构造一个相关性结构,这在模拟真实世界系统时尤其有用,因为许多变量之间往往存在某种...
在这个名为“基于matlab编程实现的超拉丁立方抽样matlab-latin-sampling.rar”的压缩包中,我们可以找到一个用MATLAB编程语言实现的LHS算法。MATLAB是广泛应用于科学计算、图像处理和数据分析的高级编程环境,其语法...
根据提供的文件信息,本文将详细解释Java中字符串的不同编码转换方法及原理,并深入探讨每种编码格式的特点。 ### Java字符串的编码转换 在Java中,处理不同字符集之间的字符串转换是一项常见任务。尤其是在处理...
在IT行业中,Pig是Apache ...Java编程在这里扮演了扩展Pig功能的角色,允许开发者用Java实现自定义逻辑。通过Ant进行编译管理,整个流程变得更加高效和便捷。对于处理大数据问题,这种组合提供了强大而灵活的解决方案。
在MATLAB中,"20超拉丁立方抽样matlab-latin-sampling"可能是一个包含示例代码、函数或者脚本的资源包,它为用户提供了实现这一抽样方法的工具。通过学习和使用这个资源包,你可以更好地理解和运用超拉丁立方抽样...
- **String类**:Java中的String类提供了getBytes和构造函数来实现字符到字节的转换。 - **示例代码**: ```java String s = "这是一段中文字符串"; byte[] b = s.getBytes("UTF-8"); String n = new String(b, ...