
算法功能函数
记录一下问题
A_bad_boy_hahaha
猜猜我是谁,哈哈哈
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
常见查找算法
测试数组 let arr = [] for(let i =0;i < 500000;i++){ arr.push(i) } exports.arr = arr 顺序查找 顺序查找就是简单的遍历并比较是否相等 let testArr = require('../testArr').arr let data = 49999 function searchData (array, data) { for (let index = 0; index < array.length;原创 2021-08-05 13:54:52 · 107 阅读 · 0 评论 -
常见排序算法
文章目录测试数据冒泡排序插入排序选择排序快速排序归并排序希尔排序堆排序 测试数据 //testArr.js let arr = [] // for(let i =0;i < 50000;i++){ // arr.push(i) // } for(let i =50000;i > 0;i--){ arr.push(i) } exports.arr = arr 冒泡排序 let aa = require('./testArr') let arr = aa.arr console.tim原创 2021-08-05 10:59:32 · 104 阅读 · 0 评论 -
JavaScript求解最大子段和
1、使用BF求解最大字段和 var arr = [4, -3, 5, -2, -1, 2, 6, -2,-2,-2,-2,-2,-2,-2]; // 显然这个数组的最大子段和 [4, -3, 5, -2, -1, 2, 6] = 11 //首先来我们的暴力破解法 求出每一个子区间的和 返回最大值 function BF_MaximumSubsegmentSum(arr) { var n = arr.length; var maxSum = 0; for (var i = 0; i <原创 2021-03-26 21:36:12 · 431 阅读 · 0 评论 -
KMP算法和BF算法求解串匹配问题
BF算法(暴力法) 暴力破解法简单粗暴。。。逐个字符进行匹配 //text 字符串 //pattern 目标字符串 function pipei(text,pattern){ var m = text.length var n = pattern.length var i = 0 var j = 0 while(i < m && j <n){ if(text[i] == pattern[j]){ i++ j++ }原创 2021-03-25 22:25:39 · 569 阅读 · 0 评论 -
判断两棵二叉树是否一样
给你两棵二叉树的根节点 p 和 q ,编写一个函数来检验这两棵树是否相同。 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。 示例 1: 输入:p = [1,2,3], q = [1,2,3] 输出:true 示例 2: 输入:p = [1,2], q = [1,null,2] 输出:false 示例 3: 输入:p = [1,2,1], q = [1,1,2] 输出:false /** * Definition for a binary tree node. * functio原创 2021-02-08 14:29:19 · 589 阅读 · 0 评论 -
与斐波那契数列相似的爬楼梯问题
今天再看力扣题目的时候看到了一个爬楼梯的小问题: 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 示例 1: 输入: 2 输出: 2 解释: 有两种方法可以爬到楼顶。 1 阶 + 1 阶 2 阶 示例 2: 输入: 3 输出: 3 解释: 有三种方法可以爬到楼顶。 1 阶 + 1 阶 + 1 阶 1 阶 + 2 阶 2 阶 + 1 阶 这跟斐波那契数列很相似即f(n) = f(n - 2) + f(n - 1) 我们很容易想到使用递归的原创 2021-02-07 18:14:41 · 320 阅读 · 0 评论