数据结构主要用来组织数据,也做为数据的容器,载体。算法
各类各样的算法,都须要使用必定的数据结构来组织数据。数据库
常见的典型数据结构有:segmentfault
上述能够延伸出各类各样的术语和结构,如列表,集合,哈希表,堆,优先队列,二叉树,红黑树,B+树以及各类变种等。数组
咱们区别开数据结构和算法,是由于算法是更高层次的一种智慧结晶,目的就是为了解决问题,基本的算法分类有:数据结构
计算机科学做为数学的一个分支,大部分的数学知识都是离散数学。咱们学习微积分,都是连续的量,但是计算机处理的都是离散的量,数据不存在渐变,都是一个个离散数据。并发
因此针对离散的计算机科学来讲,不少算法都是很简单,也是富含哲学的。 也就是说,如今已知的全部算法,都是严格定义的,是死的,是千篇一概的。做为解决平常生活的一种思路,不须要纠结算法是什么分类,只要知道有这种方法,在何时须要使用它就好了。数据结构和算法
通常在平常工程开发中,也就是作软件,作网站,基本只使用到排序和查找算法,甚至有些状况下不须要使用。100%的平常开发场景是,我拿到一个数据存在数据库,你须要这个数据,我再帮你找出来。函数
咱们会在后面的篇章介绍这些数据结构和算法。学习
我是陈星星,欢迎阅读我亲自写的 数据结构和算法(Golang实现),文章首发于 阅读更友好的GitBook。网站