• js 多层菜单递归

    2020-03-13 浏览:318
    思路 首先遍历一遍data找到顶级菜单(pid=0)存入res中,然后遍历res,为每一项添加children属性,用每一项的id作为pid查找它的子元素,没有则退出并删除children,不断递归即可 function getTree(pid, arr, res) { for (let i = 0; i < arr.length; i++) { if (arr[i].pid == pid) { res.push(arr[i]) arr.splice(i, 1) i-- } } res.map(r => { ... 展开全文
  • VuePress的使用

    2019-12-24 浏览:792
    VuePress是一个由Vue 驱动的静态网站生成器 简洁至上 以 Markdown 为中心的项目结构,以最少的配置帮助你专注于写作。 Vue 驱动 享受 Vue + webpack 的开发体验,可以在 Markdown 中使用 Vue 组件,又可以使用 Vue 来开发自定义主题。 高性能 VuePress 会为每个页面预渲染生成静态的 HTML,同时,每个页面被加载的时候,将作为 SPA 运行。 安装 全局安装 npm install -g vuepress 创建项目并初始化 mkdir project cd project... 展开全文
  • cordova相关

    2019-12-03 浏览:867
    全局安装 npm install -g cordova // 安装指定版本 npm install -g cordova@8.1.2 创建项目 cordova create test 添加平台 cordova platform add android --save // 指定版本 cordova platform add android@6.3.0 --save 调试 cordova run android 打包 cordova build android andorid studio build 报错:Invalid escape sequence at line 1 column 29 path $[0].name 修改gradle.properties org.gradle.jvmargs=-Dfile.e... 展开全文
  • electron进程通信之文件保存

    2019-11-29 浏览:960
    ipcMain模块是EventEmitter类的一个实例。在主进程中使用时,它处理从渲染器进程(网页)发送的异步和同步消息。从渲染器发送的消息将发送到此模块。 在渲染进程创建一个保存按钮,并向主进程发送消息: test.vue <template> <a-button icon="branches" @click="exportExcel">导出</a-button> </template> <script> import {ipcRenderer} from 'electron' export default { methods: { ... 展开全文
  • electron只允许启动一个实例

    2019-11-18 浏览:801
    scr/main/index.js中配置如下 //多实例退出 let myWindow = null const shouldQuit = app.makeSingleInstance((commandLine, workingDirectory) => { if (myWindow) { if (myWindow.isMinimized()) myWindow.restore() myWindow.focus() } }) if (shouldQuit) { app.quit() } 展开全文
  • 720. 词典中最长的单词

    2019-10-25 浏览:882
    给出一个字符串数组words组成的一本英语词典。从中找出最长的一个单词,该单词是由words词典中其他单词逐步添加一个字母组成。若其中有多个可行的答案,则返回答案中字典序最小的单词。 若无答案,则返回空字符串。 示例 1: 输入: words = ["w","wo","wor","worl", "world"] 输出: "world" 解释: 单词"world"可由"w", "wo", "wor", 和 "worl"添加一个字母组成。 示例 2: 输入: words = ["a", "banana", "app... 展开全文
  • 645. 错误的集合

    2019-10-25 浏览:822
    集合 S 包含从1到 n 的整数。不幸的是,因为数据错误,导致集合里面某一个元素复制了成了集合里面的另外一个元素的值,导致集合丢失了一个整数并且有一个元素重复。 给定一个数组 nums 代表了集合 S 发生错误后的结果。你的任务是首先寻找到重复出现的整数,再找到丢失的整数,将它们以数组的形式返回。 示例 1: 输入: nums = [1,2,2,4] 输出: [2,3] 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/se... 展开全文
  • 在歌曲列表中,第 i 首歌曲的持续时间为 time[i] 秒。 返回其总持续时间(以秒为单位)可被 60 整除的歌曲对的数量。形式上,我们希望索引的数字  i < j 且有 (time[i] + time[j]) % 60 == 0。 示例 1: 输入:[30,20,150,100,40] 输出:3 解释:这三对的总持续时间可被 60 整数: (time[0] = 30, time[2] = 150): 总持续时间 180 (time[1] = 20, time[3] = 100): 总持续时间 120 (time[1] = 20, time[4] = 4... 展开全文
  • 944. 删列造序

    2019-10-25 浏览:786
    给定由 N 个小写字母字符串组成的数组 A,其中每个字符串长度相等。 删除 操作的定义是:选出一组要删掉的列,删去 A 中对应列中的所有字符,形式上,第 n 列为 [A[0][n], A[1][n], ..., A[A.length-1][n]])。 比如,有 A = ["abcdef", "uvwxyz"], 要删掉的列为 {0, 2, 3},删除后 A 为["bef", "vyz"], A 的列分别为["b","v"], ["e","y"], ["f","z"]。 你需要选出一组要删掉的列 D,对 A 执行删除操作,使 A 中剩余的每一列... 展开全文
  • 515. 在每个树行中找最大值

    2019-10-24 浏览:843
    您需要在二叉树的每一行中找到最大的值。 示例: 输入: 1 / \ 3 2 / \ \ 5 3 9 输出: [1, 3, 9] 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/find-largest-value-in-each-tree-row 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 题解 /** * Definition for a binary tree node. * function TreeNode(val) { * this.v... 展开全文
  • 513. 找树左下角的值

    2019-10-24 浏览:708
    给定一个二叉树,在树的最后一行找到最左边的值。 示例 1: 输入: 2 / \ 1 3 输出: 1   示例 2: 输入: 1 / \ 2 3 / / \ 4 5 6 / 7 输出: 7 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/find-bottom-left-tree-value 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 题解 /** * Definition for a binary tree node... 展开全文
  • 394. 字符串解码

    2019-10-24 浏览:720
    给定一个经过编码的字符串,返回它解码后的字符串。 编码规则为: k[encoded_string],表示其中方括号内部的 encoded_string 正好重复 k 次。注意 k 保证为正整数。 你可以认为输入字符串总是有效的;输入字符串中没有额外的空格,且输入的方括号总是符合格式要求的。 此外,你可以认为原始数据不包含数字,所有的数字只表示重复的次数 k ,例如不会出现像 3a 或 2[4] 的输入。 示例: s = "3[a]2[bc]", 返回 "aaabcbc". s... 展开全文
  • 199. 二叉树的右视图

    2019-10-24 浏览:768
    给定一棵二叉树,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。 示例: 输入: [1,2,3,null,5,null,4] 输出: [1, 3, 4] 解释: 1 <--- / \ 2 3 <--- \ \ 5 4 <--- 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/binary-tree-right-side-view 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 题... 展开全文
  • 897. 递增顺序查找树

    2019-10-22 浏览:774
    给定一个树,按中序遍历重新排列树,使树中最左边的结点现在是树的根,并且每个结点没有左子结点,只有一个右子结点。   示例 : 输入:[5,3,6,2,4,null,8,1,null,null,null,7,9] 5 / \ 3 6 / \ \ 2 4 8  / / \ 1 7 9 输出:[1,null,2,null,3,null,4,null,5,null,6,null,7,null,8,null,9] 1   \   2   \   3   \   4   \   5   \   ... 展开全文
  • 872. 叶子相似的树

    2019-10-22 浏览:738
    请考虑一颗二叉树上所有的叶子,这些叶子的值按从左到右的顺序排列形成一个 叶值序列 。 举个例子,如上图所示,给定一颗叶值序列为 (6, 7, 4, 9, 8) 的树。 如果有两颗二叉树的叶值序列是相同,那么我们就认为它们是 叶相似 的。 如果给定的两个头结点分别为 root1 和 root2 的树是叶相似的,则返回 true;否则返回 false 。 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/leaf-similar-trees 著作权归领扣... 展开全文
  • 104. 二叉树的最大深度

    2019-10-22 浏览:768
    给定一个二叉树,找出其最大深度。 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。 说明: 叶子节点是指没有子节点的节点。 示例: 给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7 返回它的最大深度 3 。 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/maximum-depth-of-binary-tree 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 题... 展开全文
  • 100. 相同的树

    2019-10-22 浏览:726
    给定两个二叉树,编写一个函数来检验它们是否相同。 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。 示例 1: 输入: 1 1 / \ / \ 2 3 2 3 [1,2,3], [1,2,3] 输出: true 示例 2: 输入: 1 1 / \ 2 2 [1,2], [1,null,2] 输出: false 示例 3: 输入: 1 1 ... 展开全文
  • 98. 验证二叉搜索树

    2019-10-22 浏览:762
    给定一个二叉树,判断其是否是一个有效的二叉搜索树。 假设一个二叉搜索树具有如下特征: 节点的左子树只包含小于当前节点的数。 节点的右子树只包含大于当前节点的数。 所有左子树和右子树自身必须也是二叉搜索树。 示例 1: 输入: 2 / \ 1 3 输出: true 示例 2: 输入: 5 / \ 1 4   / \   3 6 输出: false 解释: 输入为: [5,1,4,null,null,3,6]。   根节点的值为 5 ,但是其右子节点值为 4 ... 展开全文
  • 200. 岛屿数量

    2019-10-22 浏览:759
    给定一个由 '1'(陆地)和 '0'(水)组成的的二维网格,计算岛屿的数量。一个岛被水包围,并且它是通过水平方向或垂直方向上相邻的陆地连接而成的。你可以假设网格的四个边均被水包围。 示例 1: 输入: 11110 11010 11000 00000 输出: 1 示例 2: 输入: 11000 11000 00100 00011 输出: 3 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/number-of-islands 著作权归领扣网络所有。... 展开全文
  • 539. 最小时间差

    2019-10-22 浏览:687
    给定一个 24 小时制(小时:分钟)的时间列表,找出列表中任意两个时间的最小时间差并已分钟数表示。 示例 1: 输入: ["23:59","00:00"] 输出: 1 备注: 列表中时间数在 2~20000 之间。 每个时间取值在 00:00~23:59 之间。 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/minimum-time-difference 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 题解 /** * @param {string[]}... 展开全文