程序设计原理中关于算法

 

一、概念:算法是由有限序列组成用来解决问题的指令.

        算法=控制指令+基本操作.

        定义一个算法需要:人类语言、伪代码、流程图、程序语言。

二、设计一个算法的基本要求

        Finiteness :算法的步骤必须是有限的;

        Definiteness :程序语言清晰,有明确的执行步骤;

        Input :有大于等于零步的输入;

        Output :有至少一步的输出;

        Feasibility :算法必须可实现。

三、设计一个算法的基本原则

        Correctness :算法步骤必须是正确的 ;

        Readability :语句易懂,可读性强;

        Robust :具有武装性,即使用户输入非法数据算法也可识别;

        时间上的高效性空间上的低内存。

四、分析算法

        1、  空间复杂度

        2、  时间复杂度:计算时间

             · 影响执行时间的因素:

               ①  计算机执行命令的速度

               ②  由编译器生成机器语言的质量

               ③  程序语言

               ④  问题的规模

               ⑤  算法所挑选的方法

        3、  O(f(n))表示法

                当“问题的规模(由n表示)”是唯一的解决办法,如果随着n的增长,执行时间的增长速率与f(n)一样,那么我们表示它为:T(n)=o(f(n))。

                 f(n):通常为基本操作的最大执行时间。

                基本操作:一把在最内层的循环中列出。

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值