㈠ 数据结构有哪些基本算法
数据结构是一门研究非数值计算的程序设计问题中的操作对象,以及它们之间的关系和操作等相关问题的学科。
可以理解为:程序设计 = 数据结构 + 算法
数据结构算法具有五个基本特征:输入、输出、有穷性、确定性和可行性。
1、输入:一个算法具有零个或者多个输出。以刻画运算对象的初始情况,所谓0个输入是指算法本身定出了初始条件。后面一句话翻译过来就是,如果一个算法本身给出了初始条件,那么可以没有输出。比如,打印一句话:NSLog(@"你最牛逼!");
2、输出:算法至少有一个输出。也就是说,算法一定要有输出。输出的形式可以是打印,也可以使返回一个值或者多个值等。也可以是显示某些提示。
3、有穷性:算法的执行步骤是有限的,算法的执行时间也是有限的。
4、确定性:算法的每个步骤都有确定的含义,不会出现二义性。
5、可行性:算法是可用的,也就是能够解决当前问题。
数据结果的基本算法有:
1、图搜索(广度优先、深度优先)深度优先特别重要
2、排序
3、动态规划
4、匹配算法和网络流算法
5、正则表达式和字符串匹配
6、三路划分-快速排序
7、合并排序(更具扩展性,复杂度类似快速排序)
8、DF/BF 搜索 (要知道使用场景)
9、Prim / Kruskal (最小生成树)
10、Dijkstra (最短路径算法)
11、选择算法
㈡ 计算机算法的三种基本结构
网络知道
计算机程序的三种基本结构是啥?
yezi1950
TA获得超过22万个赞
关注
成为第1930位粉丝
计算机程序的三种基本结构是:顺序结构、分支结构、循环结构
1、顺序结构:
顺序结构是一个程序从第一行一直运行到最后一行,也就是程序从头到尾运行。
2、分支结构:
分支结构的执行是依据一定的条件选择执行路径,而不是严格按照语句出现的物理顺序。分支结构的程序设计方法的关键在于构造合适的分支条件和分析程序流程,根据不同的程序流程选择适当的分支语句。分支结构适合于带有逻辑或关系比较等条件判断的计算,设计这类程序时往往都要先绘制其程序流程图,然后根据程序流程写出源程序,这样做把程序设计分析与语言分开,使得问题简单化,易于理解。
3、循环结构:
一般用于重复某段需要不断重复执行的代码。
共同特点:
① 三种结构都是只有一个入口,一个出口。
② 三种结构内都不存在死循环。