七、程序流程控制

news2024/10/24 9:17:47

一、三种执行顺序

执行顺序说明
顺序结构自上而下的执行代码
分支结构根据条件,选择对应代码执行
循环结构控制某段代码重复执行

二、分支结构

1、if 分支

  • 根据条件(真或假)来决定执行某段代码
  • if 分支有三种形式
//第一种形式
if(条件表达式){
	代码;
}
//第二种形式
if(条件表达式){
	代码1;
} else {
	代码2;
}
//第三种形式
if(条件表达式1){
	代码1;
} else if(条件表达式2) {
	代码2;
} else if(条件表达式3) {
	代码3;
} else if(条件表达式4) {
...
} else {
	代码 n;
}

if 第一种形式

  • 格式:
//第一种形式
if(条件表达式){
	语句体;
}
  • 执行流程:首先判断条件表达式的结果,如果为 true 执行语句体,为 false 就不执行语句体,如下图所示
    在这里插入图片描述
  • 注意事项:if 语句中,如果大括号控制的只有一行代码,则大括号可以省略不写,但是不建议省略,有大括号利于增加代码的可读性。

if 第二种形式

  • 格式:
//第二种形式
if(条件表达式){
	语句体 1;
} else {
	语句体 2;
}
  • 执行流程:首先判断条件表达式的结果,如果为 true 执行语句体1,为 false 就执行语句体2,如下图所示
    在这里插入图片描述

if 第三种形式

  • 格式:
//第三种形式
if(条件表达式1){
	语句体 1;
} else if(条件表达式2) {
	语句体 2;
} else if(条件表达式3) {
	语句体 3;
} else if(条件表达式4) {
...
} else {
	语句体 n+1;
}
  • 执行流程:①先判断条件1的值,如果为 true 则执行语句体1,分支结束;如果为 false 则判断条件2的值。②如果值为 true 就执行语句体2,分支结束;如果为 false 则判断条件3的值。③…④如果没有任何条件为 true ,就执行 else 分支的语句体 n+1。
    在这里插入图片描述

常见问题:

  • if(条件){},()后不能跟“;”否则{}中的代码将不受 if 的控制了
  • 如果 if 语句的{}中只有一行代码的情况,{}可以省略不写(但是不推荐省略

案例:考试奖励

  • 需求:键盘录入考试成绩,根据成绩所在的区间,程序打印出不同的奖励机制
  • 分析:

①键盘录入考试成绩
②由于奖励种类较多,属于多种判断,采用 if…else…if 格式实现
③为每种判断设置对应的条件
④为每种判断设置对应的奖励
注意事项:正确数据、边界数据、错误数据

  • 解决:
    在这里插入图片描述
  • 代码如下:
public class Case {
    //考试奖励
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("请输入考试成绩:");
        int score = sc.nextInt();
        if (score >= 90 && score <= 100) {
            System.out.println("山地自行车一辆");
        } else if (score >= 80) {
            System.out.println("游乐场畅玩门票一张");
        } else if (score >= 70) {
            System.out.println("乐高玩具一件");
        } else if (score >= 60) {
            System.out.println("电影票一张");
        } else if (score < 60 && score >= 0) {
            System.out.println("家法伺候");
        } else {
            System.out.println("你输入的成绩有错误");
        }
    }
}

案例:密码校验

  • 需求:键盘录入用户密码,如果密码为111111,程序输出密码正确,否则输出密码有误
  • 分析:

①使用 Scanner 录入用户输入的密码,并使用变量接受
②使用 if…else 组织程序逻辑
注意事项:咱们常用的密码正常应该使用字符串 String 类,但是字符串的比较有些特殊,目前咱们先不使用这个字符串,先用整型去做这个案例

  • 解决:
    在这里插入图片描述
  • 代码如下:
public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("请输入密码:");
        int password = sc.nextInt();
        if (password == 111111) {
            System.out.println("密码正确");
        } else {
            System.out.println("密码错误");
        }
    }

2、switch 分支

  • 通过比较值来决定执行哪条分支

switch 分支的执行流程

①先执行表达式的值,再拿着这个值与 case 后的值进行匹配
②与哪个 case 后的值匹配为 true 就执行哪个 case 块的代码,遇到 break 就跳出 switch 分支
③如果全部 case 后的值与之匹配都是 false ,则执行 default 块的代码

使用 switch 分支的注意事项

  • 表达式只能是 byte、short、int、char,JDK 5 开始支持枚举,JDK 7 开始支持 String、不支持 double、float、long
  • case 给出的值不允许重复,且只能是字面量,不能是变量。
  • 正常使用 switch 的时候,不要忘记写 break ,否则会出现穿透现象。
  • 当存在多个 case 分支的代码相同时,可以把相同的代码放到一个 case 块中,其他的 case 块都通过穿透性透到该 case 块执行代码即可,可以简化代码。下面给穿透性代码举个例子:
//穿透性代码举例
public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入‘周几’:");
        String date = scanner.nextLine();
        switch (date) {
            case "周一":
            case "周二":
            case "周三":
            case "周四":
                System.out.println("当社畜!");
                break;
            case "周五":
                System.out.println("今天是周五,当最后一天社畜!");
                break;
            case "周六":
                System.out.println("今天是周六,放肆玩一天!");
                break;
            case "周日":
                System.out.println("今天是周日,好好休息一天!");
                break;
            default:
                System.out.println("输入错误,请输入正确的日期!");
                break;
        }
    }

案例:电子备忘录

  • 需求:输入周几就输出当天需要干什么
  • 分析:

①需要键盘输入,用 Scanner ;
②有具体的值,采用 switch 语句格式实现
③在 switch 语句中设置相应的值
④在每个 switch 分支中设置对应的输出内容

  • 解决:
    在这里插入图片描述
  • 代码如下
//电子备忘录
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入‘周几’:");
        String date = scanner.nextLine();
        switch (date) {
            case "周一":
                System.out.println("今天是周一,学 Java 吧!");
                break;
            case "周二":
                System.out.println("今天是周二,当社畜!");
                break;
            case "周三":
                System.out.println("今天是周三,学学考研知识!");
                break;
            case "周四":
                System.out.println("今天是周四,做法期待周五到来!");
                break;
            case "周五":
                System.out.println("今天是周五,当最后一天社畜!");
                break;
            case "周六":
                System.out.println("今天是周六,放肆玩一天!");
                break;
            case "周日":
                System.out.println("今天是周日,好好休息一天!");
                break;
            default:
                System.out.println("输入错误,请输入正确的日期!");
                break;
        }
    }

3、if 和 switch 的比较以及适用场景

  • if 在功能上远远大于 switch
  • 当前条件是区间的时候,应该使用 if 分支结构
  • 当条件是与一个一个的值比较的时候,switch分支更合适:格式良好,性能较好,代码可读性更强

三、循环结构

1、for 循环

  • 控制一段代码反复执行很多次
  • for 循环格式:
for (初始化语句;循环条件;迭代语句) {
	循环体语句(重复执行的代码);
}
for (int i = 0; i < 3; i++) {
//输出3次HelloWorld
	System.out.println("Hello, world!");
}

for 循环案例详细流程讲解:

for (int i = 0; i < 3; i++) {
//输出3次HelloWorld
	System.out.println("Hello, world!");
}
  • 执行的流程:
    在这里插入图片描述

①循环一开始,执行 int i = 0 一次。
②此时 i = 0,紧接着计算机执行循环条件语句:0 < 3 返回 true,计算机就进到循环体中执行,输出:Hello, world!,然后执行迭代语句 i++。
③此时 i = 1,紧接着计算机执行循环条件语句:1 < 3 返回 true,计算机就进到循环体中执行,输出:Hello, world!,然后执行迭代语句 i++。
④此时 i = 2,紧接着计算机执行循环条件语句:2 < 3 返回 true,计算机就进到循环体中执行,输出:Hello, world!,然后执行迭代语句 i++。
⑤此时 i = 3,然后判断循环条件:3 < 3 返回 false,循环立即结束!!!!

for 循环的常见应用场景

  • 在开发中减少代码的重复编写、灵活的控制程序的执行
  • 在其他常见应用场景中批量生产数据

案例:求和

  • 需求:求1-5之间的数据和,并把求和结果在控制台输出。
  • 分析:

①使用for循环一次产生:1、2、5
②在循环体外定义一个 int 类型的变量 sum 用于求和,循环每产生一个数,就加到 sum 中去
③循环结束后,输出求和变量即是结果

  • 解决:
    在这里插入图片描述
  • 代码如下:
public static void main(String[] args) {
        int sum = 0;
        for (int i = 1; i <= 5; i++) {
            sum += i;
        }
        System.out.println("求和结果是:" + sum);
    }

案例:奇数求和

  • 需求:求1-10之间的奇数和,并把求和结果在控制台输出
  • 分析方式1:

①定义 for 循环,使其能够依次产生:1、2、3、4、5… 10
②在循环外定义一个 int 类型的变量 sum 用于求和
③循环每产生一个数据,都通过 if 判断其是否是奇数,是奇数,则进到 if 中将其加到 sum 中去

  • 解决方式1:
    在这里插入图片描述
  • 代码如下:
//求奇数和
    public static void main(String[] args) {
        int sum = 0;
        for (int i = 1; i <= 10; i++) {
            if (i % 2 == 1) {
                sum += i;
            }
        }
        System.out.println(sum);
    }
  • 分析方式2:

①定义 for 循环,使其能够依次产生:1、3、5、7、9
②在循环外定义一个整数变量 sum,循环每产生一个数据就加到 sum 中去
③循环结束后,输出 sum 变量即可

  • 解决方式2:
    在这里插入图片描述
//求奇数和
    public static void main(String[] args) {
        int sum = 0;
        for (int i = 1; i <= 10; i+=2) {
            sum += i;
        }
        System.out.println(sum);
    }

案例:水仙花数

  • 需求:在控制台输出所有的“水仙花数”,并求在区间内的水仙花数的个数,水仙花数必须满足如下两个要求:

①水仙花数是一个三位数
②水仙花数的个位、十位、百位的数字立方和等于原数

  • 分析:

①定义一个 for 循环从“100一直到999”
②每次访问到数据后,提取该数据的:个位、十位、百位数字
③使用 if 判断:个位、十位、百位的数字立方和是否等于原数,等于则输出该数据
④在循环外定义一个count=0,每输出一个水仙花数,就在循环内使count++。

  • 解决:
    在这里插入图片描述
  • 代码如下:
//水仙花数
    public static void main(String[] args) {
        int count = 0;
        for (int i = 100; i <= 999; i++){
            int a = i / 100;//提取百位数
            int b = i / 10 % 10;//提取十位数
            int c = i % 10;//提取个位数
            if (a * a * a + b * b * b + c * c * c == i){
                System.out.println(i);
                count++;
            }
        }
        System.out.println("区间内的水仙花数共有:" + count + "个");
    }

2、while 循环

  • 格式如下:
初始化语句;
while (循环条件) {
循环体语句(被重复执行的代码);
迭代语句;
        }
  • 示例:
int i = 0;
while (i < 3) {
	System.out.println("Hello World");
	i++;
}

执行流程

①循环一开始,执行 int i = 0 一次。
②此时 i = 0,接着计算机执行循环条件语句:0 < 3 返回 true,计算机就进到循环体中执行,输出:HelloWorld,然后执行迭代语句 i++;
③此时 i = 1,接着计算机执行循环条件语句:1 < 3 返回 true,计算机就进到循环体中执行,输出:HelloWorld,然后执行迭代语句 i++;
④此时 i = 2,接着计算机执行循环条件语句:2 < 3 返回 true,计算机就进到循环体中执行,输出:HelloWorld,然后执行迭代语句 i++;
⑤此时 i = 3,然后判断循环条件:3 < 3 返回 false,循环立即结束!!

while和for有什么区别?

  • 功能上是完全一样的,for 能解决的 while 也能解决,反之亦然。
  • 使用规范:知道循环几次:使用 for;不知道循环几次建议使用:while。

案例:纸张折叠成珠穆朗玛峰的高度

  • 需求:世界最高山峰珠穆朗玛峰高度是:8848.86米 = 8848860毫米,假如我有一张足够大的纸,它的厚度是0.1毫米。请问:该纸张折叠多少次,可以这折叠成珠穆朗玛峰的高度?
  • 分析:

①一开始不知道要循环多少次则使用while
②使用 while 循环来控制纸张折叠,循环条件是(纸张厚度 < 山峰高度),循环每执行一次,就表示纸张折叠一次,并把纸张厚度变为原来两倍。
③循环外定义计数变量 count,循环每折叠一次纸张,让 count 变量+1。

  • 解决:
    在这里插入图片描述
  • 代码如下:
//纸张折叠成珠穆朗玛峰的高度
public static void main(String[] args) {
    double peakHeight = 8848860;//山峰高度
    double paperHeight = 0.1;//纸张高度
    int count = 0;//折叠次数
    while (paperHeight < peakHeight) {
        paperHeight = paperHeight * 2;
        count++;
    }
    System.out.println("纸张折叠的次数是:" + count);
}

3、do-while 循环

  • 格式如下:
初始化语句;
do {
	循环体语句;
	迭代语句;
} while (循环条件);
  • 示例:
int i = 0;
do {
	System.out.println("Hello World!");
	i++;
} while(i < 3);

执行流程

在这里插入图片描述

  • 先执行后判断

4、三种循环的区别小结

  • for 循环和 while 循环(先判断后执行);do…while (先执行后判断)
  • for 循环和 while 循环的执行流程是一模一样的,功能上无区别,for 能做的 while 也能做,反之亦然
  • 使用规范:如果已知循环次数建议使用 for 循环,如果不清楚要循环多少此建议使用 while 循环。
  • 其他区别:for 循环中,控制循环的变量只在循环中使用。while 循环中,控制循环的变量在循环后还可以继续使用

4、死循环

  • 可以一直执行下去的一种循环,如果没有干预不会停下来,经常用在服务器程序中

死循环的三种写法

//第一种
for ( ; ; ) {
	System.out.println("Hello World");
}

//第二种 经典写法
while (true) {
	System.out.println("Hello World");
}

//第三种
do {
	System.out.println("Hello World");
} while (true);

5、循环嵌套

  • 循环中又包含循环
  • 示例:
for (int i = 0; i < 3; i++) {
	for(int j = 0; j < 5; j++){
		System.out.println("这里是双层循环要输出的地方");
	}
}

循环嵌套的特点

  • 外部循环每循环一次,内部循环会全部执行完一轮

案例:循环嵌套

  • 需求:在控制台使用 * 打印出4行5列的矩形
  • 分析:

①循环打印出4行
②在每行打印出来的文字中再循环打印出5列

  • 解决:
    在这里插入图片描述
  • 代码如下:
//循环嵌套:
public static void main(String[] args) {
    for (int i = 0; i < 4; i++) {
        for (int j = 0; j < 5; j++) {
            System.out.print("*");
        }
        System.out.print("\n");
    }
}

四、跳转关键字

  • break:跳出并结束当前所在循环的执行
  • continue:用于跳出当前循环的当次执行,直接进入循环的下一次执行
  • 注意事项:

break:只能用于结束所在循环,或者结束所在 switch 分支的执行
continue:只能在循环中进行使用

案例:密码验证

  • 需求:系统密码是520,请用户不断的输入密码验证没验证不对输出:密码错误,验证成功输出:欢迎进入系统,并停止程序
  • 分析:

①定义一个变量记录正确的密码(密码自己想嗷)
②使用 while 死循环,让用户不断输入数据,与正确密码对比:验证不成功输出:密码错误、验证成功输出:欢迎进入系统,并使用 break 结束当前循环的执行。

  • 解决:
    在这里插入图片描述
  • 代码如下:
//案例:密码验证
public static void main(String[] args) {
    String password = "yue520";
    while (true) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入密码:");
        String inputPassword = scanner.nextLine();
        if (inputPassword.equals(password)) {
            System.out.println("密码正确,欢迎进入系统!");
            break;
        } else {
            System.out.println("密码错误,请重新输入!");
        }
    }
}

五、案例:随机数 Random 类

1、技术:Random的使用

  • Random 作用:生成随机数
  • 得到 0-9 的随机数的实现步骤:

①导包:告诉程序去 JDK 的哪个包中找 Random
②写一行代码拿到随机数对象
③调用随机数的功能获取 0-9 之间的随机数
在这里插入图片描述

  • 注意: nextInt(n) 功能只能生成:0 至 n - 1 之间的随机数,不包含 n。

2、Random 生成指定区间随机数

  • 例如:要生成 1-10 之间的随机数,程序怎么实现
  • 技巧:先减后加(先用区间的最大数减去区间最小数再加1,然后再在后面加上最小数)
  • 举例:生成65-91之间的随机数(int number = r.nextInt(27) + 65)

3、案例:猜数字游戏

  • 需求:随机生成一个 1-100 之间的数据,提示用户猜测,猜大提示过大,猜小提示过小,直到猜中结束游戏。
  • 分析:

①先随机生成一个 1-100 之间的数据
②定义一个死循环让用户可以一直猜测
③在死循环里,每次都提示用户输入一个猜测的数字,猜大提示过大,猜小提示过小,猜中则结束游戏

  • 解决:
    在这里插入图片描述
  • 代码如下:
//案例:猜数字游戏
public static void main(String[] args) {
    Random rand = new Random();
    int number = rand.nextInt(100) + 1;
    while (true){
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入一个数字:");
        int guess = scanner.nextInt();
        if (guess == number) {
            System.out.println("恭喜你,猜对了!");
            break;
        } else if (guess < number) {
            System.out.println("猜的数字小了,请再试一次!");
        } else if (guess > number) {
            System.out.println("猜的数字大了,请再试一次!");
        }
    }
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2211040.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Qt学习(一)——win10系统下Qt安装(Qt5.15.2+QtCreator5.0.3+MSVC2019)

win10平台下&#xff0c;Qt Creator 5.0.3 软件About Qt Creator界面如下&#xff1a; 其基于Qt 5.15.2 MSVC2019&#xff0c;64bit,故在用Qt4 设计师自定义控件所设计的控件能够被Qt Creator加载到&#xff0c;就要安装相应版本的Qt和MSVC。此安装便可支持win10系统下的自定义…

Java项目实战II基于Java+Spring Boot+MySQL的足球青训俱乐部管理后台系统的设计与开发(源码+数据库+文档)

目录 一、前言 二、技术介绍 三、系统实现 四、文档参考 五、核心代码 六、源码获取 全栈码农以及毕业设计实战开发&#xff0c;CSDN平台Java领域新星创作者&#xff0c;专注于大学生项目实战开发、讲解和毕业答疑辅导。获取源码联系方式请查看文末 一、前言 足球作为世…

【hot100-java】排序链表

链表题。 使用归并排序法。 一图解决。 /*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode() {}* ListNode(int val) { this.val val; }* ListNode(int val, ListNode next) { this.val val; thi…

(刷题记录6)三数之和

三数之和 题目信息&#xff1a;题目思路(环境来自力扣OJ的C)&#xff1a;暴力枚举&#xff1a;双指针&#xff1a;在三数之和上&#xff1a;转化成的两数之和&#xff1a;两数之和小优化&#xff1a; 复杂度&#xff1a;代码和解释&#xff1a;暴力枚举&#xff1a;双指针&…

【C语言】深入理解指针(三)(上)

本篇博客将讲解以下知识&#xff1a; 1、字符指针变量 2、数组指针变量 1、字符指针变量 在指针的类型中&#xff0c;有一种指针类型为字符指针&#xff1a;char* 一般使用&#xff1a; 注意&#xff1a;%s打印字符串的时候&#xff0c;需要提供字符串首元素的起始地址。 易错…

tensorflow + pygame 手写数字识别的小游戏

起因&#xff0c; 目的: 很久之前&#xff0c;一个客户的作业&#xff0c;我帮忙写的。 今天删项目&#xff0c;觉得比较简洁&#xff0c;发出来给大家看看。 效果图: 1. 训练模型的代码 import sys import tensorflow as tf# Use MNIST handwriting dataset mnist tf.kera…

C# 中循环的应用说明

一循环的概念说明 在C#编程中&#xff0c;循环结构是一种非常重要的控制流语句&#xff0c;它允许我们重复执行一段代码&#xff0c;直到满足某个特定条件为止。C#提供了几种不同类型的循环结构&#xff0c;包括for循环、while循环、do-while循环和foreach循环。 循环语句允许…

树莓派应用--AI项目实战篇来啦-7.OpenCV脸部和眼睛检测

1. 介绍 在深度学习时代&#xff0c;人脸识别一般是利用卷积神经网络进行监督式学习&#xff0c;也就是通过让算法&#xff08;神经网络&#xff09;自己去发现规律的方式&#xff0c;创造出有用的卷积核&#xff0c;然后利用其进行寻找图片和视频中的人脸&#xff0c;而在这之…

【Mac苹果电脑安装】DBeaverEE for Mac 数据库管理工具软件教程【保姆级教程】

Mac分享吧 文章目录 DBeaverEE 数据库管理工具 软件安装完成&#xff0c;打开效果图片Mac电脑 DBeaverEE 数据库管理工具 软件安装——v24.21️⃣&#xff1a;下载软件2️⃣&#xff1a;安装JDK&#xff0c;根据下图操作步骤提示完成安装3️⃣&#xff1a;安装DBeaverEE&#…

【ESP32】ESP-IDF开发 | LED PWM控制器+呼吸灯例程

1. 简介 LED PWM控制器&#xff0c;简称LEDC&#xff0c;主要用于控制LED的亮度和颜色&#xff0c;当然也可以当作普通的PWM进行使用。 LEDC有16路通道&#xff0c;8路高速通道和8路低速通道&#xff0c;16路通道都能够产生独立的数字波形来驱动LED设备。高速和低速通道分别有8…

C++:模拟stack、queue

目录 容器适配器 定义 特点 deque deque的优势与缺点 选择deque作为stack和queue的底层默认容器的原因 模拟实现stack 模拟实现queue 容器适配器 定义 在C标准模板库&#xff08;STL&#xff09;中&#xff0c;容器适配器&#xff08;Container Adapters&#xff09;是…

Harmony开发基础

背景介绍 鸿蒙系统的开发一来是为了打破国外垄断&#xff0c;实现操作系统的国产化&#xff0c;另一方面是针对目前市场上出现大量新的移动设备&#xff0c;手表&#xff0c;折叠屏等&#xff0c;移动端程序要适配不同设备&#xff0c;需要维护一套代码下的多个版本&#xff0…

U盘直接拔掉之后数据丢失怎么恢复 U盘数据丢失了怎么恢复

U盘作为一种存储设备&#xff0c;可以帮助人们存储很多资料文件&#xff0c;无论是办公文件&#xff0c;亦或是生活中的照片&#xff0c;所以在存储数据文件时&#xff0c;人们是比较依赖U盘。不过&#xff0c;U盘也存在很多的不确定性&#xff0c;比如数据容易丢失、或者损坏。…

NirCmd-sendkeysendkeypress

引入script [Script File] This command allows you to execute a sequence of commands stored inside the file specified in [Script File] parameter. Example: script "c:\temp\msg.ncl" Example for a script:infobox "Hello !" "This is the …

微知-如何查看服务器CPU当前运行主频?(cat /sys/devices/system/cpu/cpu1/cpufreq/scaling_cur_freq)

关键命令 cat /sys/devices/system/cpu/cpu1/cpufreq/scaling_cur_freq背景 首先lscpu可以查看到有多个cpu&#xff0c;里面也会显示cpu的频率&#xff0c;但是这里显示仅仅是规格&#xff0c;不是实际值。为了查看实际值&#xff0c;需要到/sys文件系统中查看&#xff0c;也…

大数据-167 ELK Elasticsearch 详细介绍 特点 分片 查询

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; 目前已经更新到了&#xff1a; Hadoop&#xff08;已更完&#xff09;HDFS&#xff08;已更完&#xff09;MapReduce&#xff08;已更完&am…

ARIMA 模型初体验 —— 预测股票数据

第 1 步&#xff0c;从 twelvedata 上获取苹果 11 号 15:30 到 16:00 的 OHLC、成交量 数据。 第 2 步&#xff0c;编写 Python 代码&#xff08;实际上可以用 R 语言&#xff0c;R 语言从语言的级别对分析预测提供了支持&#xff0c;而 Python 需要第三方库&#xff09;。 …

Yolov8 搭配 Frequency-aware Feature Fusion for Dense Image Prediction

个人觉得论文赞的地方 https://github.com/Linwei-Chen/FreqFusion https://www.arxiv.org/abs/2408.12879 因为我有个项目需要训练边界模糊的情况,但又需要目标能在模糊里凸显出来,就是看到这张图以后觉得很赞,边界变得清晰有特征是我想要的,所以尝试用了 使后感 哈哈…

【CSS3】css开篇基础(2)

1.❤️❤️前言~&#x1f973;&#x1f389;&#x1f389;&#x1f389; Hello, Hello~ 亲爱的朋友们&#x1f44b;&#x1f44b;&#xff0c;这里是E绵绵呀✍️✍️。 如果你喜欢这篇文章&#xff0c;请别吝啬你的点赞❤️❤️和收藏&#x1f4d6;&#x1f4d6;。如果你对我的…

数据结构-5.2.树的性质

一.树的常考性质&#xff1a; 性质1&#xff1a;结点数 总度数 1(结点的度&#xff1a;结点分支的数量) 一个分支中&#xff0c;如父结点B&#xff0c;两个子结点为E和F&#xff0c;结点B的度的值为2&#xff0c;等于子结点数量&#xff0c;加上这一个父结点(父结点只能有一…