用java实现的海明码及验证出错位
只是最简单的实现,可在其基础上实现其他功能。
import java.util.Scanner;
public class Ham {
Scanner enter=new Scanner(System.in);
String s_data; //输入的字符串类型的数据
int dlength; //输入数据的长度
int[] data; //将输入的数据转换成整型数据
int hlength; //海明码长度
int[] ham; //海明码
int plength; //校验位长度
int[] p; //校验位
int[] c; //验证出错位数的数组
void input(){
System.out.println("输入数据:");
String s_data=enter.nextLine();
dlength=s_data.length();
data=new int[dlength];
for(int i=0;i<dlength;i++){
data[i]=Integer.parseInt(s_data.substring(i, i+1));
//System.out.print(data[i]);
}
generateHam();
}
void generateHam(){
int i=1;
int label=1; //指向海明码的校验位
int k=data.length-1; //指向数据位
while(Math.pow(2, i)<dlength+i+1){
i++;
}
plength=i; //校验位位数
p=new int[plength];
c=new int[plength];
//System.out.println("plength "+plength);
hlength=dlength+plength;
ham=new int[hlength];
/*
* 向海明码中填写数据位
*/
for(int j=0;j<h
相关文档:
Java学习从入门到精通
一、 JDK (Java Development Kit)
JDK是整个Java的核心,包括了Java运行环境(Java Runtime Envirnment),一堆Java工具和Java基础的类库(rt.jar)。不论什么Java应用服务器实质都是内置了某个版本的JDK。因此掌握JDK是学好Java的第一步。最主流的J ......
Java NIO API详解
在JDK
1.4以前,Java的IO操作集中在java.io这个包中,是基于流的阻塞(blocking)API。对于大多数应用来说,这样的API使用很方
便,然而,一些对性能要求较高的应用,尤其是服务端应用,往往需要一个更为有效的方式来处理IO。从JDK 1.4起,NIO
API作为一个基于缓冲区,并能提供非阻塞(non-blo ......
原子操作
所谓原子操作,就是"不可中断的一个或一系列操作" , 在确认一个操作是原子的情况下,多线程环境里面,我们可以避免仅仅为保护这个操作 在外围加上性能昂贵的锁,甚至借助于原子操作,我们可以实现互斥锁。 关于java中的原子性
原子性可以应用于除long和double之外的所有基本类型之上的“简单操作”。对 ......
public class testthree {
public static void main(String[] args) {
testthree t = new testthree();
t.test();
}
private static void test() {
int d = 0;
int f = 4;
int x = 0;
int y = 6;
for (i ......
在 Google 输入 java call win32api 的第一个结果
http://www.jinvoke.com/calling-the-win32-api-from-java
就是我需要的答案。呵呵
看看这个吧
java版任务管理器
java版注册表编辑器
Calling the Win32 API from Java
首先从 http://www.jinvoke.com/calling-the-win32-api-from-java 将 jinvoke下载回来
将 ......