数据结构与算法
2017-08-08 本文已影响5人
饥人谷_hak
算法的特性
输入,输出,有穷性,确定性,可行性
1.输入
- 算法具有零个或多个输入。
- 输入参数是可以不必要的,列如: "my son"
2.输出 - 算法至少有一个或多个输出
- 可以是打印形式输出, 也可以是返回一个值或多个只等
3.有穷性 - 只算法在执行有限的步骤之后,自动结束而不会出现无限循环,并且每一个步骤在可接受的时间内完成。
4.确定性 - 算法的没一个步骤都具有确定的含义,不会出现二义性(二就是二,不二就是不二)
- 算法在一定条件下,只有一条执行路径,相同的输入只能有唯一的输出结果。
- 算法的每个步骤都应该被精确定义而无歧义。
5.可行性 - 算法的每一步都必须是可行的,也就是说,每一步都能沟通过执行有限次数完成。
JavaScript二叉树排序算法
线性表
线性表是有零个或多个数据元素组成的有限序列。
- 首先它是一个序列,也就是说元素之间是有个先来后到的。
- 若元素存在多个,则第一个元素无前驱,而最后一个元素无后继,其他元素都有且只有一个前驱和后继。
- 线性表是有限的,无论计算机发展到多强大,它所处理的元素都是有限的。
[a1,...,ai-1,ai,ai+1,...an] //ai-1是ai的前驱元素,ai+1是ai的后驱元素