数据库老师布置的作业题目,求属性集闭包和函数依赖集闭包的算法实现
我用比较简单的方法算了一下
欢迎交流
import java.util.*;
public class QiuBiBao_DBtext {public static void main(String[] args)
{
System.out.println("请输入函数依赖,假设所有的属性都用大写字母A到Z来表示。");
System.out.println("请先输入函数依赖左边的属性,在输入函数依赖右边的属性。结束时输入END。");
String[] Left=new String[10];
String[] Right=new String[10];
int count=0;
while(true)
{
Scanner in=new Scanner(System.in);
String str=in.nextLine();
if(str.compareTo("END")==0)
{
break;
}
else//将函数依赖的属性分左右分别放在两个数组中。
{
count++;
if(count%2==1)
{
Left[(count+1)/2]=str;
}
else
{
Right[(count/2)]=str;
}
}
if(count%2==0)
{
System.out.println("完成第"+count/2+"个依赖:"+Left[count/2]+"->"+Right[count/2]);
}
}
//求属性闭包的运算。
while(true)
{
System.out.println("请输入需要求得属性集:");
Scanner in_1=new Scanner(System.in);
String str=in_1.nextLine();
if(str.compareTo("END")==0)
{
break;
}
QiuShuXingBiBao.qiuShuXingBiBao(Left,Right,str,count);
}