算法导论学习笔记(一)

本文是《算法导论》的学习笔记,重点探讨算法的定义、效率衡量以及在实际中的应用。介绍了排序、计算凸壳问题的重要性,并通过课后习题分析了插入排序与归并排序的效率对比,以及不同算法在特定输入规模下的优劣。同时,以美团外卖为例,阐述了算法在应用层面对问题解决的关键作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

算法导论学习笔记(一)

笔记

1.算法的定义:就是任何良定义的计算过程,算法就是把输入换成输出计算步骤的一个序列,相当于一个包装好的计算工具,使用什么样的算法就说明你期待了什么样的结果。
2.判定算法的效率就是运行的速度
3.算法相当于一种技术,系统的性能不但依赖于选择快速的硬件,还依赖于选择有效的算法

课后习题
1.1-1 给出现实生活中需要排序的一个例子或者现实生活中需要计算凸壳的一个例子。
1.1-2 除速度外,在真实环境中还可能使用哪些其他有关效率的量度?
1.1-3 选择一种你以前已知的数据结构,并讨论其优势和局限。
1.1-4 前面给出的最短路径与旅行商问题有哪些相似之处?又有哪些不同?
1.1-5 提供一个现实生活的问题,其中只有最佳解才行。然后提供一个问题,其中近似最佳的一个解也足够好。
答案
1.1-1 期中考试的数学成绩按照从低到高的顺序排名,找出凸壳:木板上钉了 21个钉子,以其中一些钉子为顶点组成的凸多边形可以包含所有 21个钉子,找出使凸多边形达到最小的所有钉子。
1.1-2 CPU的占用率,问题的正确率和解决程度
1.1-3 链表:链表使用指针进行元素间的连接,对于查找中间元素,删除元素等操作,相对简单,但是由于是用指针进行连接,地址不连续所以很容易产生地址碎片,造成空间上的占用。
1.1-4 旅行商问题(贪心算法):https://www.cnblogs.com/larryking/p/5734459.html
选取的是局部最优解,所有的路线全部遍历,选区最短的总长度
最短路径:是多条线路中选取期中最短的路径
1.1-5 略

课后习题
1.2-1 给出在应用层需要算法的内容的应用的一个例子,并讨论涉及的算法的功能。
1.2-2 假设我们正在比较插入排序与归并排序在相同机器上的实现,对规格为n的输入,插入排序运行8n2步,而归并跑徐运行64lgn步。问对哪些n值,插入排序优于归并排序?
1.2-3 n的最小值为何值时,运行时间为100n2的一个算法在相同的机器上快于运行时间为2n的另一个算法。

答案
1.2-1 美团外卖(应用层)对于谁接单,信誉度,路程的计算。
1.2-2 8n2<64lgn
1.2-3 f(n) = 100n2,g(n) = 2n,n=14, f=19600, g=16384 f > g,n =15, f=22500, g=32768 f < g,所以n最小为15

章节习题
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值