用JavaScript实现排序算法(冒泡排序、选择排序、插入排序、快速排序、归并排序)
摘要:冒泡排序 思路: 对未排序的各元素从头到尾依次比较相邻的两个元素大小关系 如果左边的队员高, 则两队员交换位置 向右移动一个位置, 比较下面两个队员 当走到最右端时, 最高的队员一定被放在了最右边 按照这个思路, 从最左端重新开始, 这次走到倒数第二个位置的队员即可. 依次类推, 就可以将数据排序完
阅读全文
posted @
2022-08-25 23:19
香香鲲
阅读(138)
推荐(0)
树?二叉树?二叉搜索树BST(二叉树)
摘要:树 树的定义: 树(Tree): n(n≥0)个结点构成的有限集合。 当n=0时,称为空树; 对于任一棵非空树(n> 0),它具备以下性质: 树中有一个称为“根(Root)”的特殊结点,用 root 表示; 其余结点可分为m(m>0)个互不相交的有限集T1,T2,... ,Tm,其中每个集合本身又是
阅读全文
posted @
2022-08-25 22:57
香香鲲
阅读(76)
推荐(0)
对单向循环链表、双向循环链表的基本操作封装
摘要:单向循环链表 class Cnode { constructor(data) { this.data = data; this.next = null; } } // 链表的结构 class CycleLinkList { constructor() { this.head = null; this
阅读全文
posted @
2022-08-25 11:12
香香鲲
阅读(55)
推荐(0)
什么是双向链表?双向链表的操作封装实现(增删改查)?
摘要:什么是双向链表? 双向链表 既可以从头遍历到尾, 又可以从尾遍历到头 也就是链表相连的过程是双向的. 那么它的实现原理, 你能猜到吗? 一个节点既有向前连接的引用, 也有一个向后连接的引用. 双向链表可以有效的解决单向链表中提到的问题. 双向链表的操作封装实现 // 节点的结构 只能通过newnod
阅读全文
posted @
2022-08-24 23:33
香香鲲
阅读(91)
推荐(0)
合并两条有序链表
摘要:封装LinkedList方法 class Node { constructor(data) { this.data = data this.next = null } } class LinkedList { constructor() { this.length = 0 this.head = n
阅读全文
posted @
2022-08-24 23:21
香香鲲
阅读(45)
推荐(0)
什么是单向链表?单向链表的基本操作?如何封装?链表的优缺点......
摘要:什么是单向链表? 单向链表(单链表)是链表的一种,其特点是链表的链接方向是单向的,对链表的访问要通过顺序读取从头部开始;链表是使用指针进行构造的列表--百度 单向链表的基本操作? append(element):向列表尾部添加一个新的项 insert(position, element):向列表的特
阅读全文
posted @
2022-08-24 23:16
香香鲲
阅读(217)
推荐(0)
括号匹配度判断
摘要:括号匹配度判断 function isMatch(str) { let stack = new Stack(); for (let i = 0; i < str.length; i++) { if (str[i] == "(" || str[i] == "[" || str[i] == "{") {
阅读全文
posted @
2022-08-23 10:12
香香鲲
阅读(22)
推荐(0)
用栈结构解决佩慈糖果盒问题(JavaScript)
摘要:封装的栈操作方法: https://www.cnblogs.com/LIXI-/p/16612874.html var sweetBox = new Stack(); sweetBox.push('red'); sweetBox.push('yellow'); sweetBox.push('red'
阅读全文
posted @
2022-08-23 10:00
香香鲲
阅读(34)
推荐(0)
用栈结构实现回文数的判断(JavaScript)
摘要:封装的方法栈方法: https://www.cnblogs.com/LIXI-/p/16612874.html 判断回文数: function isHuiwen(str) { let stack = new Stack(); for (let i = 0; i < str.length; i++)
阅读全文
posted @
2022-08-23 09:53
香香鲲
阅读(57)
推荐(0)
队列结构
摘要:什么是队列? 队列(Queue),它是一种运算受限的线性表,先进先出(FIFO First In First Out) 队列是一种受限的线性结构 受限之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作 实现队列 创建 function Queue(){ } 队
阅读全文
posted @
2022-08-22 23:08
香香鲲
阅读(95)
推荐(0)
什么是栈?栈的基本操作
摘要:什么是栈? 栈(stack),它是一种运算受限的线性表,后进先出(LIFO) LIFO(last in first out)表示就是后进入的元素, 第一个弹出栈空间. 类似于自动餐托盘, 最后放上的托盘, 往往先把拿出去使用. 其限制是仅允许在表的一端进行插入和删除运算。这一端被称为栈顶,相对地,把
阅读全文
posted @
2022-08-22 19:15
香香鲲
阅读(1068)
推荐(0)
什么是数据结构?
摘要:数据结构是一种具有一定逻辑关系,在计算机中应用某种存储结构,并且封装了相应操作的数据元素的集合。--百度 数据结构用途: 解决问题方法的效率, 根数据的组织方式有关 计算机中存储的数据量相对于图书馆的书籍来说数据量更大, 数据更加多 以什么样的方式, 来存储和组织我们的数据才能在使用数据时更加方便呢
阅读全文
posted @
2022-08-22 14:34
香香鲲
阅读(262)
推荐(0)