算法与数据结构
文章平均质量分 51
sky111144
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
前端学算法(一):印象
数据结构与算法JavaScript描述,写得很棒,近来阅读之后,对数据结构与算法有了全新的了解。回头再去看C语言描述的数据结构和算法,感觉亲切了很多。作为一名Web前端,目前用到算法的地方不多,正因为这样就更加要学好数据结构与算法。不然,等以后还是一年经验n年用。算法和数据结构,二者的关系相辅相成,言算法必有数据结构,反之亦然。数据结构的分类,有逻辑结构和物理结构。逻辑原创 2016-11-21 12:46:16 · 859 阅读 · 0 评论 -
前端学算法(二):线性表
线性表(List),是一种非常常见的数据结构,可以分为两种,一般线性表和受限线性表。一般线性表可以对节点自由地进行增删查改;而受限线性表,则只能在一定的限制下对节点进行操作,例如栈、队列等。作为一名前端自然就用JavaScript了。要实现线性表,要解决三个问题,采用什么样的方式存储数据,实现哪些操作数据的方法,又怎么样实现操作数据的方法。至于存储方式,就采用数组。原创 2016-11-21 12:48:25 · 484 阅读 · 0 评论 -
前端学算法(三):栈
栈,是一种后入先出(LIFO)的线性结构。栈的头部,称为栈底;栈的尾部,称为栈顶。元素,从栈顶压入;从栈顶弹出。如何实现一个栈:(1)确定存储结构:是离散的,还是连续的。进而言之,是链表,还是连续表。绝大多数的编程语言中,其数据结构,不一定实现链表,但都会实现数组(Array)。可以选用数组,作为存储结构。(2)确定操作方法:需要实现入栈方法(push),出栈方法(pop),预览栈原创 2016-11-22 18:21:21 · 387 阅读 · 0 评论 -
前端学算法(四):栈的应用
栈的应用广泛,将最近关于栈的简单应用做一个总结。1、进制转化:将十进制整数转化为任意正整数进制。(1)原理:除n取余法。(2)实现:function mulBase( num, base ) { var s = new Stack(); // 除n取余 do { s.push(num % base); num = Math.floor(原创 2016-11-23 09:55:32 · 527 阅读 · 0 评论 -
前端学算法(五):链表
链表是一种物理存储结构上非连续、非顺序的数据结构,元素的逻辑顺序是通过链表中的指针链接次序实现的。节点由数据域和指针域构成。如何实现链表:(1)确定如何实现节点(2)确定操作方法:需要实现查原创 2016-12-30 22:40:55 · 597 阅读 · 0 评论
分享