数据结构

2019-06-01  本文已影响0人  null_14ee

第一:为什么学习数据结构和算法?

学习通用性知识,突破技能瓶颈:笔者做iOS开发也有两年了,这期间通过从项目,第三方源码,相关应用类的编程书籍提高了些技术水平。而作为没学过数据结构和算法的非科班大军中的一员,这些知识始终是绕不过去的。因为对此类知识的掌握程度会对今后编程技能的提高有着无可估量的影响,所以就决定学习了。

第二:为什么用Swift语言来实现?

选择哪个语言并不重要,重要的是数据结构和算法本身的理解:通过两个星期的学习,如今笔者已经可以使用Swift语言来实现几种数据结构和算法了,但我相信如果我使用C语言或者Objective-C语言的话会学得更快些,因为在实现的时候由于对该语言的不熟悉导致在实现过程中踩了不少坑。不过可以反过来思考:如果我可以使用Swift来实现这些,那么我今后用C,Objective-C,甚至是Java就容易多了,再加上我还顺便学习了Swift不是么?

如今Swift的势头还在上涨:笔者已经观察到很多新的库,教学都使用了Swift语言。而且听说一些面试的朋友在面试过程中多少有问过Swift相关的知识,一些公司的新项目也有用Swift写了。

基于上面这些原因,在今年年初把数据结构,算法和Swift的学习提上了日程,并且计划以连载的形式把学习过程中的笔记和知识分享出来。

该系列的最佳受众是那些已经会Swift,但是对数据结构和算法还没有过多接触过的iOS开发者。其次是那些不会Swift也不会数据结构和算法的iOS开发者,毕竟Swift是大势所趋。

不过对于那些非iOS开发者来说也同样适合,因为还是那句话:重点不在于使用哪种语言,而是数据结构和算法本身。除了第一篇会讲解一些在这个系列文章会使用到的Swift基础语法以外,后续的文章我会逐渐弱化对Swift语言的讲解,将重点放在数据结构和算法这里。而且后续我还会不断增加其他语言的实现(Java语言是肯定要加的,其他的语言还待定)。

好了,背景介绍完了,现在正式开始:

作为该系列的开篇,本文分为两个部分:

Swift语法基础:讲解一下后续连载中讲到的数据结构和算法所涉及到的Swift语法知识(并不是很全面,也不是很深入,但是在实现数据结构和算法这块应该是够了)。

数据结构:简单介绍数据结构和算法的相关概念,以及用Swift来实现几个简单的数据结构(链表,栈,队列)

注:该系列涉及到的Swift语法最低基于Swift4.0。

数据结构
上一篇下一篇

猜你喜欢

热点阅读