java经典算法-day9

举报
喵手 发表于 2024/09/30 22:44:14 2024/09/30
【摘要】 哈喽,各位小伙伴们好,我是喵手。一、前言正值金三银四好时节,又到了刷题月。xdm,有空的欢迎一起呀。无论你是挤公交还是坐地铁时间,随时随地皆可刷...你可以不用实操,你只需要看题思考,完后有空coding就好呀。接下来我要开启我的刷题之旅啦,喜欢的小伙伴欢迎点赞关注哦。二、题目描述:题目1:输入三个整数x,y,z,请把这三个数由小到大输出。题目2:猴子吃桃问题:猴子第一天摘下若干个桃子,当即...


哈喽,各位小伙伴们好,我是喵手。

一、前言

正值金三银四好时节,又到了刷题月。xdm,有空的欢迎一起呀。无论你是挤公交还是坐地铁时间,随时随地皆可刷...你可以不用实操,你只需要看题思考,完后有空coding就好呀。接下来我要开启我的刷题之旅啦,喜欢的小伙伴欢迎点赞关注哦。

二、题目描述:

题目1:

输入三个整数x,y,z,请把这三个数由小到大输出。

题目2:

猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。

三、思路分析:

题1分析:

        拿到这题,可能最先想到的就是两两比较,先把最小的找出来,然后再比较剩下两个谁更大,这样三个数就可以按顺序进行大小输出了。

题2分析:

        这题就很数学问题了,可能初中的时候,有写过这样的函数题,最后进行求解,算法都可以换算成编程来表示:假设第一天摘了n个桃子,最后,剩一个,从最后一个进行逆推,找找规律,就好了。第十天:1个;第九天:4个,第八天:10个; 第七天:22个;第六天:46个... 所以我们干脆写一个循环,因为我们知道第几次还剩多少个,从后往前逆推。

四、算法实现:

题1AC代码:

第一步,排列组合三个数字,总共就三种可能性。

依次是x>y;x>z;y>z;

/**
 * 三个数进行比较
 */
public static void sort() {

    Scanner scanner = new Scanner(System.in);
    System.out.println("请输入第一个数:");
    int x = scanner.nextInt();

    System.out.println("请输入第二个数:");
    int y = scanner.nextInt();

    System.out.println("请输入第三个数:");
    int z = scanner.nextInt();

    //定义一个临时变量
    int temp;

    //枚举三种情况,然后交换数字大小。
    if (x > y) {
        temp = y;
        y = x;
        x = temp;
    }
    if (x > z) {
        temp = z;
        z = x;
        x = temp;
    }
    if (y > z) {
        temp = z;
        z = y;
        y = temp;
    }
    System.out.println("这三个数从小到大依次输出为:"+x+" "+y+" "+z);
}

题2AC代码:

/**
 * 猴子吃桃问题
 *
 * @param day 吃到第几天
 * @param peach 桃子剩余数
 */
public static int hzct(int peach, int day) {

    for (int i = 1; i < day; i++) {
        peach = 2 * (peach + 1); //从最后一天计算
    }
    return peach;
}

五、总结:

综上,第一道题就是运用排列组合进行排序,反正就三种可能性,你可以不使用循环就可以实现。第二道就是数学题,曾记得数学试卷就出过这道题,但是此刻使用代码来实现,也好做呀,找规律解题,害怕的就是规律没有找到,这不我就给你们进行了详细说明,仅供参考。

如果你有更好的解题思路或者想法,欢迎评论区留言告诉我哦,喵手感激不尽。

六、文末:

好啦,以上就是我这期的全部内容,如果有任何疑问,欢迎下方留言哦,咱们下期见。

... ...
学习不分先后,知识不分多少;事无巨细,当以虚心求教;三人行,必有我师焉!!!

wished for you successed !!!

---------------------------------------------------------------------

⭐️若喜欢我,就请关注我叭。

⭐️若对您有用,就请点赞叭。

⭐️若有疑问,就请评论留言告诉我叭。

---------------------------------------------------------------------

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。