内容正文:
nullnull
第10课 共享区域慧调度
泰山版2024 五年级上册
第2单元 智慧校园用算法
1
趣味导入
2
算法体验室规定每天9:00-16:00向预约成功的同学开放,现在共
收到了6个预约,情况如下:
做中学
如何才能在时间不冲突的前提下尽可能多地安排预约呢?请用你喜欢的方式进行描述。
做中学
步骤1:________________________________________________
步骤2:________________________________________________
步骤3:________________________________________________
首先,先把每个预约的时间段在图上画出来。
做中学
思维导航
做中学
预约2与预约3、预约1与预约4这两组预约在时间上有冲突。
做中学
不可能将这6次预约全部安排。这时我们可以利用贪心算法对有时间冲突的预约进行取舍。
做中学
贪心算法(又称贪婪算法)是指在对问题求解时,总是做出在当前看来是最好的选择。
贪心算法
做中学
贪心算法(又称贪婪算法)得到的不一定是整体最优解,而是某种意义上的局部最优解。
贪心算法
做中学
1、选出结束最早的预约,将它安排为第一场,即选择预约3(9:00—
10:30)。
做中学
2、接下来,按照相同的规则选择第一场结束后才开始并且结束最早的预约作为第二场,即选择预约4(11:30-12:50)。
做中学
3、然后,选择第二场结束后才开始并且结束最早的预约作为第三场,即选择预约5(14:00-15:00)。
做中学
4、最后,选择第三场结束后才开始并且结束最早的预约作为第四场,
即选择预约6(15:20-16:00)。
做中学
预约1和预约2因为开始时间与其他预约有冲突,所以就预约失败。
做中学
做中学
一次预约调度的过程N-S图
根据 N-S 图,在以下积木中选择合适的积木用程序验证算法吧!
做中学
做中学
做中学
做中学
请运行程序,并将发现的问题记录下来。
做中学
问题1:________________________________
问题2:________________________________
在一些程序中,如果其中有些内容完全相同或相似,为了化程序,可以把这些重复的程序段单独做出,并按一定的格式编写成自定义积木。
小秘笈
做中学
主程序在执行过程中如果需要这一自定义积木,则通过调用指令来调用它。
小秘笈
做中学
练一练
使用贪心算法找到的方案一定是最优的吗?为什么?
贪心算法虽然简单高效,在某些特定问题中表现良好,但并不能保证在所有问题中都能找到最优解。其有效性取决于问题的具体结构和贪心策略的选择是否恰当。在不确定贪心算法是否适用时,通常需要通过实验、理论证明或与其他算法(如动态规划、回溯法等)的比较来验证其正确性。
练一练
为了丰富学生的课余生活,学校将在周四下午举行“多彩活动体验课程及时间如下表所示,如何选择才能在当天体验更多节课程呢?
练一练
数据结构是电脑组织数据方式。在电脑中,数据不会乱七八糟地放在起,而是按照一定的顺序和关系放在一起。
知识拓展
数据结构
数据结构有很多种,比如可以像砖块一样,按照一定顺序堆看;可以像大树一样,从一个主线中分出许多枝杈;可以像渔网一样,按数据间的关系相互穿插……
知识拓展
数据结构
选择合适的数据结构,可以让电脑运行更快或者节约存储空间。
知识拓展
数据结构
就像有的鞋子适合跑步,有的鞋子适合跳舞一样,不同的数据结构也有着各自的优势和劣势。
知识拓展
数据结构
数组就像一排排放整齐的积木,是最简单的数据结构,但是如果你想在中间加一块积木或者移走一块积木,就会让整个排列变得乱七八糟,所以它不适合经常添加和删除元素的场景。
知识拓展
数据结构
链表就像一条条连起来的项链,虽然可以很容易地添加和删除项链上的珠子,但是需要一个个地找才能找到你想要的珠子,所以它查找元素的速度比较慢。
知识拓展
数据结构
在现实生活中,要选择合适的数据结构来满足不同的需求。选择好了,可以让电脑运行得更快,储存更多的东西。
知识拓展
数据结构
34
$$