目录
1.算法和实现算法的Java语法
1.1 算法初步
程序 = 数据结构 + 算法
1.1.1 什么是算法
算法:用于计算的方法,通过这种方法可以达到预期的效果。
算法五个特征:
有穷性、确切性、输入、输出、可行性。
1.1.2 算法发展史
算法自古有之,在此不去研究,反正发展至今,无论使用何种编程语言,都需要和算法打交道。
1.1.3 算法分类
按照应用来分:
基本算法
数据结构和相关的算法
几何算法
图论算法
规划算法
数值分析算法
加密\解密算法
排序算法
查找算法
并行算法
数论算法
按算法结果的确定性来分:
确定性算法:在有限时间内完成,得到结果唯一,且经常取决于输入值。
非确定性算法:在有限时间内完成,得到结果不唯一,即存在多值性。
按照算法的思路来分
递推算法
递归算法
穷举算法
贪婪算法
分治算法
动态规划算法
迭代算法
1.2 算法相关概念的区别
1.2.1 算法与公式的关系
公式:是一种高精度的计算方法,可以认为是一种算法,它是人类智慧的结晶。
算法:算法并不一定是公式,算法的形式可以比公式更复杂,解决的问题更加广泛。
1.2.2 算法与程序的关系
1.2.3 算法与数据结构的关系
数据结构是数据的组织形式,可以用来表征特定的对象数据。在计算机程序中,操作的对象是各式各样的数据,这些数据往往拥有不同的数据结构。因为不同的数据结构所采用的方法不同,计算的复杂程度也不同,因此,算法往往依赖于某种数据结构,也就是说马,数据结构是算法实现的基础。
程序=数据结构+算法+程序设计语言
1.3 算法的表示
1.3.1 自然语言表示
1.3.2 流程图表示
在实际使用中,一般采用如下三种流程结构
1.3.3 N-S图表示
1.3.4 伪代码表示
1.4 算法性能的评价
1.4.1 时间复杂度
1.4.2 空间复杂度
1.5 Java语法
Java基础语法: https://blog.csdn.net/qq_40493944/article/details/106640634
标签:1.4,1.1,1.2,1.3,初步,算法,数据结构 来源: https://blog.csdn.net/qq_40493944/article/details/120538697
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。