Leetcode 30.串联所有单词的子串 Time: 20191023题目描述给定一个字符串 s 和一些长度相同的单词 words。找出 s 中恰好可以由 words 中所有单词串联形成的子串的起始位置。注意子串要与 words 中的单词完全匹配,中间不能有其他字符,但不需要考虑 words 中单词串联的顺序。示例 1:输入: s = "barfoothefoobarman", words = ["foo","bar"]...
Leetcode 1222.可以攻击国王的皇后 Time: 20191014题目描述在一个 8x8 的棋盘上,放置着若干「黑皇后」和一个「白国王」。「黑皇后」在棋盘上的位置分布用整数坐标数组 queens 表示,「白国王」的坐标用数组 king 表示。「黑皇后」的行棋规定是:横、直、斜都可以走,步数不受限制,但是,不能越子行棋。请你返回可以直接攻击到「白国王」的所有「黑皇后」的坐标(任意顺序)。示例 1:输入:queens = ...
逻辑思维的基本原理 Time: 20191008逻辑思维的基本原理,也叫“思维基本规律”,包含:同一律矛盾律排中律充足理由律同一律为了确保逻辑思维是理性的,是确定的。具体来说就是,在论证过程中,思维对象需要确定,概念需要保持同一,不能随便变换。同一律的对立面则是诡辩。矛盾律用于确保逻辑是理性的,是确定的。具体说来就是,同一思维过程中两个互相反对或者互相矛盾的判断至少一个为假,不能同时为真。...
逻辑学入门浅谈 Time: 20191008逻辑的含义逻辑:原始含义是词语,思想,概念,论点和推理。中文词逻辑是西语词汇的音译。逻辑学从狭义的角度上思考是指代研究推理和论证的科学。是一门研究从前提必然推导出结论的科学。蕴涵三段论最初来源于亚里士多德:两个前提可以得出一个结论。A推导出B,B推导出C,那么A能推导出C。归纳三段论A --> B, C–> D ⇒ A and B -...
差分隐私简介 Time: 20191008差分隐私描述了一个承诺,该承诺是由数据持有者或者管理员向数据主体发起:将数据用在任何研究、分析中,数据主体不会受到不利影响,且不管其他研究,数据集以及信息源是什么。差分隐私处理的是从个体上学习不到任何信息而整体上可以习得有用信息的悖论。比如说,医疗数据库可以告知我们抽烟会导致癌症,能够影响保险公司对抽烟者长期医疗费用的看法。抽烟者被这种分析伤害了吗?可能是,比如保...
机器学习与差分隐私 Time: 20191008链接:http://www.cs.cmu.edu/~avrim/ML07/learning-and-privacy.pdf作者:Maria-Florina Balcan学习 vs. 隐私机器学习本身需要数据,但是如果数据中包含了隐私信息,该怎么办呢?比如医疗数据,网络搜索数据,工资数据,学生成绩数据等。即使运行学习算法的人、机器能被信任,但算法本身的输出或许还...
Leetcode 1219.黄金矿工 Time: 20191006Type: Medium题目描述你要开发一座金矿,地质勘测学家已经探明了这座金矿中的资源分布,并用大小为 m * n 的网格 grid 进行了标注。每个单元格中的整数就表示这一单元格中的黄金数量;如果该单元格是空的,那么就是 0。为了使收益最大化,矿工需要按以下规则来开采黄金:每当矿工进入一个单元,就会收集该单元格中的所有黄金。矿工每次可以从当前位置向上下左...
Leetcode 1218.最长定差子序列 Time: 20191006Type: Medium题目描述给你一个整数数组 arr 和一个整数 difference,请你找出 arr 中所有相邻元素之间的差等于给定 difference 的等差子序列,并返回其中最长的等差子序列的长度。示例 1:输入:arr = [1,2,3,4], difference = 1输出:4解释:最长的等差子序列是 [1,2,3,4]。示例 2:...
Leetcode 254.因子的组合 Time: 20191005Type: Medium题目描述整数可以被看作是其因子的乘积。例如:8 = 2 x 2 x 2; = 2 x 4.请实现一个函数,该函数接收一个整数n并返回该整数所有的因子组合。注意:你可以假定n为永远为正数。因子必须大于 1 并且小于 n。示例 1:输入: 1输出: []示例 2:示例2:输入: 37输出: []示例 3:输...
Leetcode 17.电话号码的组合(回溯法) Time: 20191005Type: Medium题目描述给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。示例:输入:“23”输出:[“ad”, “ae”, “af”, “bd”, “be”, “bf”, “cd”, “ce”, “cf”].说明:尽管上面的答案是按字典序排列的,但是你可以...
预处理器loader总结 Time: 20191005预处理器的作用前端工程涉及到的资源,除了JS还有很多其他内容:HTMLCSS模板图片字体…我们前面都是在围绕着JS的打包问题在学习Webpack。现在我们需要进一步学习在Webpack中,如何统一处理多种资源,用到的技术就是预处理技术。预处理器被称作loader,能够赋予Webpack处理不同资源的能力,为前端打包提供了丰富的扩展性。涉及的内...
webpack资源的输入与输出 Time: 20190925在前面的文章中我们讲到的都是关于模块的组装,现在我们进入到一个新的话题:前端工程涉及到的资源是从哪里来,组装后送到哪里去的问题。本文主要涉及到三个字段的配置:contextentryoutput一、资源的处理流程Webpack资源处理流程事情的开始是:指定入口。这和我们写任何语言的代码是一样的道理,程序的入口是一切一切的开始。同样,资源处理,也...
理解高性能Python Time: 20190925在学习Python高性能编程技法前,需要先理解何为高性能Python,我们带着问题出发来思考:计算机架构包含哪些元素?常见计算机架构有哪些?计算机架构在Python语言中的抽象表达是什么?实现高性能的Python代码的障碍在哪里?性能问题有哪些冲突?在本书的开篇,为计算机编程是什么下了一个很简洁的定义:计算机编程就是以特定的方式进行数据的移动和转换...
Python高性能编程指南大纲 Time: 20190925关于本系列学习大纲Python是一门开箱即用的语言了,但是往往会停在基础使用水平不能再往前一步,实际上它有非常多值得深挖,深入理解的点,本系列主要学习自《High Performance Python》一书,大纲如下:我们将按照章节顺序逐一展开,希望看到这个系列的读者,也有所启发。END....
Leetcode 742.二叉树最近的叶子结点 Time: 20190924Type: Medium题目描述给定一个 每个结点的值互不相同 的二叉树,和一个目标值 k,找出树中与目标值 k 最近的叶结点。这里,与叶结点 最近 表示在二叉树中到达该叶节点需要行进的边数与到达其它叶结点相比最少。而且,当一个结点没有孩子结点时称其为叶结点。在下面的例子中,输入的树以逐行的平铺形式表示。实际上的有根树 root 将以TreeNode对象的形式...
Leetcode 863.二叉树中所有距离为K的结点 Time: 20190924Type: Medium题目描述给定一个二叉树(具有根结点 root), 一个目标结点 target ,和一个整数值 K 。返回到目标结点 target 距离为 K 的所有结点的值的列表。 答案可以以任何顺序返回。示例 1:输入:root = [3,5,1,6,2,0,8,null,null,7,4], target = 5, K = 2输出:[7,4,1...
关于并查集的Python实现代码 Time: 20190924class UnionFind: def __init__(self, nums): # 初始时元素是自己的大boss self.pre = list(range(nums)) self.size = [1] * nums def union(self, x, y): px = ...
CommonJS的值拷贝与ES6的动态映射 Time: 20190924导入模块式,CommonJS中获取的是导出值的拷贝,ES6模块中则是值的动态映射,且这个映射是只读的。简单来说就是,在CommonJS规范下,通过require()导入的是模块的一份值拷贝,可以任意修改,且不会影响到原模块的值。修改原模块的值也不会变动当前文件下的值。-- 二者在导入那一刻失去了联系。在ES6规范下,打入只是和原模块建立连接,当前文件下不允许修...
5198.丑数III Time: 20190922Type: Medium题目描述请你帮忙设计一个程序,用来找出第 n 个丑数。丑数是可以被 a 或 b 或 c 整除的 正整数。示例 1:输入:n = 3, a = 2, b = 3, c = 5输出:4解释:丑数序列为 2, 3, 4, 5, 6, 8, 9, 10… 其中第 3 个是 4。示例 2:输入:n = 4, a = 2, b = 3, ...