
算法
文章平均质量分 62
胖虎之后是兔子
外圣内王,不役于物
展开
-
promise列表按顺序输出且每个异步操作是并行执行的
promise列表按顺序输出,切并行原创 2021-03-08 15:47:10 · 634 阅读 · 0 评论 -
节点值为n的全部二叉树
节点值为n的全部二叉树原创 2021-03-05 18:22:59 · 479 阅读 · 0 评论 -
算法导论 第一部分 第四章-分治策略
分治策略 、递归式、分治算法、递归式求解原创 2021-02-19 16:02:39 · 364 阅读 · 0 评论 -
通过id和父id重建树
通过id和父id重建树、深度优先DFS、广度优先BFS原创 2021-02-18 16:44:39 · 319 阅读 · 0 评论 -
算法导论 第一部分 第三章-函数的增长
渐进记号,渐进紧确,渐进上界,渐进下界,常用数学操作原创 2021-01-22 19:19:42 · 1270 阅读 · 0 评论 -
算法导论 第一部分 第二章-算法基础
算法导论、插入排序、合并排序、归并排序原创 2021-01-19 15:46:09 · 174 阅读 · 0 评论 -
二叉树的前序遍历js实现(递归,非递归)
二叉树的前序遍历(递归,非递归)原创 2020-10-27 10:55:32 · 541 阅读 · 0 评论 -
无重复字符的最长子串 js
无重复字符的最长子串原创 2020-10-20 09:43:27 · 471 阅读 · 1 评论 -
有序数组中的单一元素
给定一个只包含整数的有序数组,每个元素都会出现两次,唯有一个数只会出现一次,找出这个数原创 2020-06-05 15:52:35 · 272 阅读 · 0 评论 -
最大子序和 js版本
给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。原创 2020-06-01 15:12:07 · 243 阅读 · 0 评论 -
验证回文字符串2
验证回文字符串2原创 2020-05-19 17:44:44 · 149 阅读 · 0 评论 -
乘积最大子数组、最大和子数组
乘积最大子数组、最大和子数组原创 2020-05-18 11:54:54 · 235 阅读 · 0 评论 -
1到10之间的数字通过运算得到24
1到10之间的数字通过运算得到24原创 2020-05-13 13:43:36 · 1954 阅读 · 0 评论 -
n个数 全排列算法
n个数 全排列算法原创 2020-05-12 13:31:36 · 4680 阅读 · 0 评论 -
二叉搜索树 js
二叉搜索树 javascript 版本原创 2020-05-07 11:00:26 · 174 阅读 · 0 评论 -
算法基础理论 - 数据结构和树
数据结构基础和树,个人理解之笔记原创 2020-04-20 09:23:00 · 564 阅读 · 0 评论 -
动态规划-数字三角形 JavaScript
动态规划 经典 数字三角形问题原创 2020-04-08 15:44:09 · 529 阅读 · 0 评论 -
Leetcode 括号生成 js
数字 n 代表生成 () 的对数,实现一个方法用于能够生成所有可能的并且 有效的 括号组合。原创 2020-04-21 16:46:05 · 413 阅读 · 0 评论 -
Leetcode 两数之和 java & js
给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。原创 2020-04-12 20:27:03 · 147 阅读 · 0 评论 -
Leetcode 移除链表重复节点 c
C版,不使用缓存区typedef struct ListNode ListNode;// 1 1 2 3struct ListNode* removeDuplicateNodes(struct ListNode* head){ if(head==NULL||head->next==NULL){ return head; } ListNode...原创 2020-04-08 15:19:01 · 206 阅读 · 0 评论 -
Leetcode 8. 字符串转换整数 (atoi) c&js
c 语言版int myAtoi(char * str){ long num = 0; bool flag = true; //跳过空格 while(*str != '\0' && *str == ' ') str++; //判断正负 if(*str == '+'){ str++; }else if(*str ...原创 2020-04-03 17:24:32 · 124 阅读 · 0 评论 -
Leetcode 1323. 6 和 9 组成的最大数字 js&c&java
js版/** * @param {number} num * @return {number} */ var maximum69Number = function(num) { return +(num+'').replace("6", "9") };原创 2020-04-03 08:59:32 · 198 阅读 · 0 评论 -
Leetcode 1342. 将数字变成 0 的操作次数 js
js版/** * @param {number} num * @return {number} */ var numberOfSteps = function (num) { const binStr = num.toString(2); const arr = binStr.match(/1/g); if (arr) { return binStr...原创 2020-04-03 08:58:28 · 224 阅读 · 1 评论 -
Leetcode 1295. 统计位数为偶数的数字 js & c
js版/** * @param {number[]} nums * @return {number} */var findNumbers = function(nums) { return nums.filter(num => !((num+'').length & 1)).length};原创 2020-04-03 08:57:26 · 164 阅读 · 0 评论 -
Leetcode 1290. 二进制链表转整数
js版/** * Definition for singly-linked list. * function ListNode(val) { * this.val = val; * this.next = null; * } *//** * @param {ListNode} head * @return {number} */ var getDecima...原创 2020-04-03 08:56:17 · 114 阅读 · 0 评论 -
Leetcode 1281. 整数的各位积和之差
js版/** * @param {number} n * @return {number} */var subtractProductAndSum = function(n) { n = n + ''; let arr = n.split(""); let n1 = 1, n2 = 0;; arr.forEach(num => { n1 = n1 * (~...原创 2020-04-03 08:55:09 · 168 阅读 · 0 评论 -
Leetcode 1362. 最接近的因数
js版/** * @param {number} num * @return {number[]} */var closestDivisors = function (num) { const r1 = num + 1; const m1 = ~~Math.sqrt(r1); const r2 = num + 2; const m2 = ~~Math.s...原创 2020-04-02 17:31:12 · 173 阅读 · 0 评论 -
Leetcode 1299. 将每个元素替换为右侧最大元素 js
js版/** * @param {number[]} arr * @return {number[]} */ var replaceElements = function(arr) { const res = []; while(arr.length){ arr.shift(); res.push(arr.length ? Math.max.a...原创 2020-04-02 17:30:19 · 190 阅读 · 0 评论 -
Leetcode 1071. 字符串的最大公因子
js版/** * @param {string} str1 * @param {string} str2 * @return {string} */var gcdOfStrings = function (str1, str2) { // 1 找出长短字符串 let small, big; if (str1.length > str2.length) {...原创 2020-04-02 17:27:59 · 129 阅读 · 0 评论 -
Leetcode 1013. 将数组分成和相等的三个部分 js
js版/** * @param {number[]} A * @return {boolean} */var canThreePartsEqualSum = function (A) { if (A.length < 3) { return false; } let sum = A.reduce((prev, e) => prev + e,...原创 2020-04-02 17:26:48 · 158 阅读 · 0 评论 -
Leetcode 905. 按奇偶排序数组
c语言版/** * Note: The returned array must be malloced, assume caller calls free(). */int* sortArrayByParity(int* A, int ASize, int* returnSize){ int* B; B =(int *) malloc ( ASize * sizeof( in...原创 2020-04-02 17:23:24 · 99 阅读 · 0 评论 -
Leetcode 876. 链表的中间结点 c
c语言版struct ListNode* middleNode(struct ListNode* head){ struct ListNode* p = head; int len = 0; while(p ->next){ len++; p = p->next; } int mid = (len &g...原创 2020-04-02 17:21:56 · 99 阅读 · 0 评论 -
Leetcode 868. 二进制间距 js
js 版var binaryGap = function (n) { n = n.toString(2); let r = 0, prev = 0; for (let i = 0; i < n.length; i++) { if (n[i] === '1') { if (i - prev > r) r = i - prev ...原创 2020-04-02 17:20:21 · 125 阅读 · 0 评论 -
Leeetcode 771. 宝石与石头
var numJewelsInStones = function(J, S) { let count = 0; for(let i = 0; i< S.length;i++){ if(J.indexOf(S[i]) > -1){ count++; } } return count;};原创 2020-04-02 17:04:05 · 203 阅读 · 0 评论 -
Leetcode 289. 生命游戏 js
js解法 var gameOfLife = function (board) { function getLife(input, src) { if (input < 2) { return 0; } if (input === 2) { if (src === 1) { return 1; ...原创 2020-04-02 16:57:44 · 135 阅读 · 0 评论 -
二叉树遍历 js版
二叉树的遍历。和怎么得到结果的,开始不太好理解,后来发现一个简单方法,供参考,水平有限,有问题,请指正。如以上二叉树, 前序遍历 (D L R) ,中序遍历 (L D R),后序遍历 (LRD),代码如下 // 树的表示 const tree = { val: 1, left: { val: 2, left: { val: 4 }, ...原创 2020-02-14 14:25:17 · 201 阅读 · 0 评论 -
Leetcode 118. 杨辉三角 js
js 版var generate = function (numRows) { if(!numRows){ return [] } let res = [[1]]; function getMid(arr) { const res = []; if (arr.length > 1) { arr.for...原创 2020-04-01 20:23:13 · 138 阅读 · 0 评论 -
Leetcode 102. 二叉树的层序遍历
js版 var levelOrder = function (node) { const res = []; if (node) { node.index = 0; const list = [node]; while (list.length) { let node = list.shift(), index = node.i...原创 2020-04-01 20:20:46 · 146 阅读 · 0 评论 -
Leetcode 101. 对称二叉树
c语言版bool compare(struct TreeNode* p1, struct TreeNode* p2){ if(p1 == NULL && p2 == NULL){ return true; }else if(p1 != NULL && p2 == NULL){ return false; }else if(p2 != NULL &a...原创 2020-04-01 20:18:11 · 85 阅读 · 0 评论 -
Leetcode 100. 相同的树
c语言版bool isSameTree(struct TreeNode* p, struct TreeNode* q){ if(p == NULL && q == NULL){ return true; }else if(p == NULL && q != NULL){ return false; }else if (p != NULL &...原创 2020-04-01 20:15:47 · 82 阅读 · 0 评论