JavaScript
KristinKander
这个作者很懒,什么都没留下…
展开
-
JavaScript实现二叉搜索树
什么是二叉搜索树?有什么性质?二叉树搜索树性质设x是二叉搜索树中的一个结点。如果y是x左子树中的一个结点,那么y.key≤x.key。如果y是x右子树中的一个结点,那么y.key≥x.key。在二叉搜索树中:1.若任意结点的左子树不空,则左子树上所有结点的值均不大于它的根结点的值。2. 若任意结点的右子树不空,则右子树上所有结点的值均不小于它的根结点的值。3.任意结点的左、右子树也分别为二叉搜索树代码实现// 树的结构class BTNode { constructor() {原创 2022-04-15 10:06:31 · 920 阅读 · 0 评论 -
JavaScript实现红黑树
红黑树五大性质①结点是红色或者黑色,结点上只有一个color属性②根节点是黑色③叶子结点都是黑色,且为null④连接红色结点的两个子结点都是黑色,红色结点的父结点都是黑色,红色子结点都是黑色⑤从任意结点出发,到其每个叶子结点的路径中包含相同数据的黑色结点五条性质是为了保证:从根结点到叶子结点的最长路径不大于最短路径的两倍由于性质4,红黑树中不会出现两个红色结点相邻的情形。树中最短的可能出现的路径是都是黑色结点的路径,树中最长的可能出现的路径是红色结点和黑色结点交替的路径。再结合性质5,每条路径原创 2022-04-15 09:59:27 · 733 阅读 · 0 评论 -
JavaScript【剑指 Offer 09. 用两个栈实现队列】
var CQueue = function () { this.stackA = []; this.stackB = [];};CQueue.prototype.appendTail = function (value) { this.stackA.push(value);//永远从A入队};CQueue.prototype.deleteHead = function () { if (!this.stackA.length && !this.stackB.原创 2022-04-05 22:56:07 · 779 阅读 · 0 评论 -
14.最长公共前缀
var longestCommonPrefix = function(strs) { if(strs.length == 0) return ""; let ans = strs[0]; for(let i =1;i<strs.length;i++) { let j=0; for(;j<ans.length && j < strs[i].length;j++) { if(ans原创 2022-03-30 20:52:05 · 99 阅读 · 0 评论 -
JavaScript反转字符串【两种方法】【一行代码】
一行代码解决翻转字符串原创 2022-03-30 19:22:50 · 1095 阅读 · 0 评论