打算开始学习下JAVA的数据结构与算法,找到了 《漫画算法:小灰的算法之旅》一书,此组文章记录一些学习的内容
一、什么是算法
数学领域:算法(algorithm)是用于解决某一类问题的公式和思想
计算机科学领域:它的本质是一系列程序指令,用于解决特定的运算和逻辑问题
算法邮件的,也有复杂的
算法有高效的,也有拙劣的
算法的应用领域多种多样
1、衡量算法好坏的重要标准
时间复杂度
空间复杂度
2、算法应用领域
运算
查找
排序
最优决策
面试~
二、什么是数据结构
数据结构(data structure)是数据的组织、管理和存储方式,其使用目的是为了高效的访问和修改数据
1、数据结构的组成方式
1)、线性结构
线性结构是最简单的数据结构,包括数组、链表,以及有他们衍生出来的栈、队列、哈希表
2)、树
树是相对复杂的数据结构,其中比较有代表性的是二叉树,由它又衍生出了二叉堆之类的数据结构。