【Java学习之代码学习】 Prog22_排列组合问题

这里写图片描述
 每个人都有目标,但人们迈向目标的方式却各有不同。有的人喜欢把努力二字写在脸上、朋友圈里;而有的人却喜欢低调付出,默默收获。他们不说,不代表他们没有在用力。这世上,真的很难有什么一朝成功,有的只是我们看不到的、浸润着心血和汗水的负重前行。周一,早安!

█ Java问题:

每日一题:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
4*3*2 = 24
程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去 掉不满足条件的排列。

█ 代码贴图:

########################################################

这里写图片描述

########################################################

这里写图片描述
########################################################

public class test {
    public static void main(String[] args) {
        showGroupString(getGroupString("", "1234", 3));
    }

    public static String getGroupString(String head, String end, int showLen) {
        StringBuilder result = new StringBuilder();
        if (head.length() >= showLen) {
            return head + ",";
            // return head+end+",";
        } else if ((head.length() + end.length()) < showLen) {
            return "error";
        }
        for (int i = 0; i < end.length(); i++) {
            result.append(getGroupString(head + end.charAt(i),
                    end.replaceFirst(end.charAt(i) + "", ""), showLen));
        }
        return result.toString();
    }

    public static void showGroupString(String result) {
        if ("error".equals(result)) {
            System.out.print("输入格式不对:要显示的数据太长!");
        } else {
            String[] array = result.split(",");
            System.out.println("一共有" + array.length + "个答案。分别是:");
            // System.out.print(result.substring(0, result.length() - 1));
            for (int i = 0; i < array.length; i++) {
                System.out.print((i+1)%10==0?array[i]+"\n":array[i]+"\t");
            }
        }
    }
}

【内心强大须训练的6个素质】 1、有肚量去容忍那些不能改变的事。 2、有毅力去改变那些可能改变的事。 3、有能力去发现那些可有可无的事。 4、有智慧去分辨那些非此即彼的事。 5、有恒心去完成那些看似无望的事。 6、有勇气去面对那些已经做错的事——今天星期一,大家早安!

PS :本篇文章内容不是自己写的,是从崔老师发出来的内容中稍微整理后的博客,顶部的贴图来自微信公众号【人民日报】,最后的一段话,是来自王老师、吴老师的心灵鸡汤!
 

PS :2016-12-07 对代码进行一次更新,使得代码更有扩展性。
 

█ 相关资料:

1.人民日报 微信公众号

来了!新闻早班车-人民日报 微信公众号
连接:http://mp.weixin.qq.com/s/1oswEESlc0EaUn2GV4p8ug

【夜读】你才20几岁,别着急给自己贴上“一事无成”的标签

2.金老师的建议:

AsyncTask <Params, Progress, Result>
使用AsyncTask的注意事项:
1、必须在UI主线程创建AsyncTask实例;
2、必须在UI主线程调用execute方法;
3、AsyncTask中的onPreExecute、doInBackground、onPostExecute、onProgressUpdate不能程序员调用,Android系统处理;
4、每一个AsyncTask只能被执行一次,多次调用会发生异常。

这里写图片描述
这里写图片描述

3.催老师的建议:

解题的思路比较简单,没有进行封装。在每日一题的练习中,同学们可能会有不同的解题思路,同学门可以选择一种适合自己的解题思路进行学习,也可以选择一种最简单的解题思路进行练习。只有每天这样不断的练习,才能够习惯编程思想,进入编程的世界!

给大家讲个笑话:某程序员对书法十分感兴趣,退休后决定在这方面有所建树。于是花重金购买了上等的文房四宝。一日,饭后突生雅兴,一番磨墨拟纸,并点上了上好的檀香,颇有王羲之风范,又具颜真卿气势,定神片刻,泼墨挥毫,郑重地写下一行字:hello world。
新来的同学,从Hello world开始,进入编程的大门吧!

传华为年终奖曝光共分1500亿,毕业生入职3年至少分15万,如果是17-18级员工,03-04年左右进华为的,配股普遍小几十万股,税前分红大约60-70万,如果是2000年前来的,分红能过1百万

PS :本篇文章使用的内容如果涉及到侵权问题、违反相关规则请联系我,立即删除。
  

转载请注明出处:http://blog.csdn.net/ljb568838953/article/details/53466373

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值