java学不动了_本人java方向,感觉自己很牛逼,学习已经学不动了,求指导!

引用来自“shizongger”的评论

傻逼,把这道题的求解算法写出来http://bbs.csdn.net/topics/392006543,写不出来,老子楼下再骂一次傻逼,如果写出的时间复杂度比我少,我让你骂回。

楼主确实有点自大,但骂人也不好,我看了地址里的题,并不能看java技术,更多是我们大一才学java时候的考逻辑。地址里楼主的穷举法可以优化,只用写4个for,因为左边的数一确实,又边的数也就确定,然后用if判断来减少循环次数:

int a,b,c,d,e,f,g,h;

for(a = 1; a < 9; a++) {

b = 9-a;

if (b >0 && b !=a) {

for (c = 1; c < 9; c++) {

if(c != a && c != b) {

d = c - 1;

if (d >0 && d !=a && d !=b && d !=c) {

for (e =1; e < 9; e++) {

if (e != a && e != b && e != c && e!=d) {

f = 7-e;

if (f > 0 && f !=a && f !=b && f!=c && f!=d && f!=e){

for (g = 1; g<9; g++) {

if (g != a && g != b && g!=c && g != d && g !=e && g !=f) {

h = g-2;

if (h >0 && h !=a && h!=b && h!=c && h!=d && h!=e && h!=f && h!=g) {

System.out.println(a+","+b+","+c+","+d+","+e+","+f+","+g+","+h);

}

}

}

}

}

}

}

}

}

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值