算法导论(1) 笔记

算法概念:

       所谓算法,就是定义良好的计算过程,它取一个或者一组值作为输入,并产生一个或者一组值作为输出。

       亦即:算法就是一系列的计算步骤,用来将输入数据转换成输出结果。

选择最佳排序算法考虑因素:

       待排序的数据项,已排序的程度,对数据取值的i可能限制,采用的存储设备的类型。

算法大分类:

       正确算法:一个算法对每一个实例都能输出正确的结果。

       不正确算法:某些输入使得算法不会停止或者给出不是预期的结果。这些算法的错误率得到控制的话,有时也是有用的(例如,需找大质数的算法,31章有介绍)。

算法解决的问题类型:

       大类型:

               人类基因项目--存储和分析DNA的30亿化学基对的各种序列。

               因特网--快速访问和存储大量信息。

               电子商务--卡号密码私密性--公共密钥加密技术和数据签名技术---数值算法和数论理论

      小类型:

              为道路交通图建模

              计算矩阵乘积

              求解ax=b(mod n)

              平面n个点找凸壳(即包含这些点的最小凸多边形)

NPC问题:

       例子1:请看贴图。

       例子2:“商人旅行问题”:假设有一个货车运输公司,它有一个中央仓库。每一天它都要在仓库中将货物装满货车,并将它驾往若干个地方去送货。在一天结束时,这辆货车必须最后回到仓库,以便下一天再装货物。为了降低成本,该公司希望选择一条送货车行驶距离最短的送货顺序。

        这个商人旅行问题是一个NPC问题。

两种简单算法:

       插入排序算法:c1 x n2

       合并排序算法:c2 x nlog2n

       当n较小时,插入排序快,当n较大时,合并排序快

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Wireless_Link

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值