连击 天
fork: star:
快速排序 原文链接 什么是快速排序(quickSort)? 主要分成两部分实现,分区、递归操作。 分区 从数组中任意选择一个 "基准",所有比基准小的元素放在基准前面,比基准大的元素放在基本后面...
归并排序 原文链接 什么是归并排序(mergeSort)? 主要分成两部分实现,分、合操作: 分:把数组分成两半,在递归地对子数组进行 "分" 操作,直到分成一个个单独的数 合:把两个数组合并为有...
插入排序 原文链接 什么是插入排序(insertionSort)? 在数组中从左到右依次取一个数出来,然后把它放到合适的位置。从思想上可以分为有序区和无序区,有序区在左边代表已经排列好的元素。 ...
选择排序 原文链接 什么是选择排序(selectSort)? 选择排序就是在一个排列中划分为有序区和无序区,有序区在左边,无序区在右边。首先在无序区中找到最小元素,存放到有序区的起始位置,然...
冒泡排序 原文链接 什么是冒泡排序(bubbleSort)? 冒泡排序是所有排序算法中最简单的一种,当然也是性能最差的一种。冒泡排序的思想其实很简单,就如它的名字一样在水中 "冒泡"。水中有很多...
排序和搜索 原文链接 排序和搜索不仅在工作中会经常遇到,在面试中也是高频考点,所以这个是必须要懂的。 排序:把某个乱序的数组变成升序或者降序的数组。例如在我们平常开发中,例如要对一...
堆 原文链接 什么是堆? 堆是一种特殊的完全二叉树。完全二叉树的含义就是每层节点都完全填满,除了最后一层外只允许最右边缺少若干个节点。在 JavaScript 中通常用数组表示堆(按照广度优先...
堆 原文链接 ## 什么是堆? 堆是一种特殊的完全二叉树。完全二叉树的含义就是每层节点都完全填满,除了最后一层外只允许最右边缺少若干个节点。在 JavaScript 中通常用数组表示堆(按照广度优...
图 原文链接 什么是图? 图是网络结构的抽象模型,是一组由边连接的节点。图可以表示任何二元关系,比如道路、航班等。在 JavaScript 中没有图,但是可以通过 Object 和 Array 来构建图。 常...
二叉树 原文链接 什么是二叉树? 树中每个节点最多只能有两个子节点,在 JavaScript 中一般都是通过 Object 来模拟二叉树。 常用操作 前序遍历 中序遍历 后序遍历 前序遍历 根左右。 口诀: ...
树 原文链接 什么是树? 在生活中,大家对树肯定不陌生,小朋友都知道树不就是一类植物嘛,不管在任何地方都有各种各样的树。但是在计算机科学里面树是什么呢?一种分层数据的抽象模型,在我...
链表 原文链接 什么是链表? 链表是有序的数据结构,链表中的每个部分称为节点。可以首、尾、中间进行数据存取,链表的元素在内存中不必是连续的空间,每个节点通过 next 指针指向下一个节点...
队列 原文链接 什么是队列? 队列是一种遵循先进先出原则的有序集合,添加新元素的一端称为队尾,另一端称为队首。 实现功能 在 JavaScript 中没有队列,但是可以通过 Array 实现队列的所有功...
什么是栈? 原文链接 栈是基础数据结构,栈是一种遵循后进先出原则的有序集合,添加新元素的一端称为栈顶,另一端称为栈底。操作栈的元素时,只能从栈顶操作(添加、移除、取值)。 实现功能...
空间复杂度 原文链接 ## 什么是空间复杂度? 算法在运行过程中临时占用存储空间大小的度量,和时间复杂度表示一样,一个函数,用大 O 表示,例如 O (1)、O (n)、O (^2 )... ## 基础案例 O(1)...
时间复杂度 原文链接 ## 什么是时间复杂度? 定性描述该算法的运行时间,一个函数、用大 O 表示,例如 O (1)、 O (n)、O (logN) ... ### 常见的时间复杂度量级 常数阶 O (1) 对数阶 O (logN)...
何为数据结构和算法 原文链接 它对我们开发和程序有什么帮助? 像我们平常都是使用框架和库进行开发的项目的,我们也不太可能去修改库和框架的内部代码,那我们应该如何优化我们的程序,要从...
没有更多内容
加载失败,请刷新页面
文章删除后无法恢复,确定删除此文章吗?
动弹删除后,数据将无法恢复
评论删除后,数据将无法恢复