从开始接触算法,到现在给我感受最深的是算法为我们的程序注入了灵魂,好的算法有着清晰的思路,充满想象力的方式,通过数学手段结合编程语言从而去实现复杂的功能。在java开发中数据的存储和使用涉及数据结构,不同的数据结构都有着同一个目的,去减少我们获取的存储数据的时间,针对不同的情况使用不同的数据结构可以极大地提高效率。
而算法作为一门类似于数学科学的学科,将其应用于编程,需要对数学语言思路的清晰,同时也需要知道怎么样通过程序去实现我们的数学方法。
数据结构:简言之是数据与数据之间的关系 ,又分为存储结构和逻辑结构,存储结构有顺序存储(例如数组),链式存储(例如链表,通过指向下一个节点的索引,形成一个类似链状结构)
逻辑结构,数据与数据本身的关系,有集合结构,线性结构,树形结构,图形结构
线性结构包含:数组,栈,队列,单链表,循环链表,双向链表,递归,相应的排序算法
关于算法:
1.特征
有输入输出,有穷性,确定性(一个输入只会对应一个输出),可行性(可以实现具有实际意义的功能)
后面对以上的内容进行学习,并在合适的时候给予补充。