信息检索(IR)笔记2: Rank: 基于概率的rank model 这是cs276 information retrieval & web search的笔记2,这里总结关于IR 系统中,rank的一些概率模型,BIM,BM25文章目录introductionBIM( binary independent model)Retrieval Status Valueestimate ciBM25(Best Match 25)approximationsa...
信息检索(IR)笔记1: 倒排索引(Inverted Index) 建立索引是 information retrieval 的一个核心问题,这一节简单记录关于index的相关笔记.所有内容均来自 stanford cs276 information retrieval & web search文章目录text preprocessinginverted indexsimple constructionposional indexindex constr...
Kick Start 2019 round E 题解 A. Cherries Mesheasycode : githubB. Code-Eat Switcher这题结束后想通了,可以贪心,将 (ci,ei)(c_i,e_i)(ci,ei) 按照 ci/eic_i / e_ici/ei 排序,然后贪心.codegithubC. Street Checkers这题还是很容易的,首先翻译一下题意,对于一个数 XXX, 如果它的奇数因...
c++中range-based for 的性能分析 这要是对以下几种在c++里的 for-range-loop做一个总结for(auto e : container)for(auto &e : container)for(const auto &e : container)for(auto && e : container)这里主要是参考 ref [1] stackoverflow里的类容,他总结的很好...
Kick Start 2019 round D 题解 整体来说这次的题不是很难,我都能自己想出来,并写完,但是这次马力有点大,C题写了2hrs…A.X or What?这题比较简单,重点在一个 xor的性质,与位的异或次序无关即两数A,BA,BA,B 共 KKK 位⋀iAi∧Bi=(⋀iAi)∧(⋀iBi)\bigwedge_i A_i \wedge B_i = (\bigwedge_i A_i)\wedge (\bigwedge_i B_i...
Kick Start 2019 round C 题解 A. Wiggle Walk难度 模拟,编码,hashtable这个题比较简单,可以直接模拟,用一个 hashtable 维护 dp[x][y][dir] [注意这里不是开数组], 因为只有 N≤5e4N \le 5e4N≤5e4 个点所以用hashtable维护就好,复杂度 O(n)O(n)O(n)code : githubB. Circuit Board难度 RMQ每一行都是独立...
Kick Start 2019 round B 题解 A. Building Palindromeseasycode : githubB. Energy Stonesknapstack 变种.题意nnn 块石头,每块石头有 3 个参数, 初始能量 eee, 每秒能量损失 lll, 吃完所需要的时间 sss, 若石头能量损失到0,或者负数,该石头能量为0. 求吃完说有石头所能够得到的最大能量值link :https://codingco...
Count Min Sketch: from Finding the Majority Element problem to heavy hitter problem,统计元素频率的利器 这是笔者学习 Stanford cs 168 课程的一些学习笔记lecture 2, 主要讲一个基于 hash 和独立试验思想,设计的一种数据结构 count min sketch,想法非常类似于 bloom filter,都是以牺牲准确率换空间和时间。heavy hitter problemFind majority element先来看一个简单的在面试中经常会遇到的问题,找主要元素...
consistent hash : 一致性hash 简单笔记 记得我人生第一次参加面试的时候,面试官问我的就是这样一个问题: 你有很多台服务器,每台服务器上都存放着很多数据,现在要加一台服务器,如何才能让数据搬迁尽可能的少,同时能让每台服务器经可能的负载均衡。现在才发现,这就是可一致性hash 问题,当时我答了个hashMap中的rehash操作,给糊弄过去了…具体的内容可见 reference,这里大致记录一下问题定义简化问题如下:有 mmm...
MIT 6.824 lab1: mapreduce 学习总结 这是 MIT 6.824 课程 lab1 的学习总结,记录我在学习过程中的收获和踩的坑。我的实验环境是 windows 10,所以对lab的code 做了一些环境上的修改,如果你仅仅对code 感兴趣,请移步 : github/zouzhitaomapreduce overview先大致看一下 mapreduce 到底是什么我个人的简单理解是这样的: mapreduce 就是一种分...
(co-,contra-,in-)variance in Scala, what is [+-A] 本文主要总结Scala中关于generic variance(泛型变化, 我也不知道该怎么翻译,以下称 GV),(co-,contra-,in)variance in Scala 的相关知识,什么是 generic variance 呢?我的感觉是一种泛型类型的类型系统,应该和 type system 比较相关,(PL专家就不要嘲笑我了)。比如: List<Integer>是 Lis...
tail recursion 尾递归 尾递归并不是函数式编程才有的特性,c++ 里面也是有的。第一次接触尾递归,是在 UW的coursera课程中,第二次是在sensetime的面试中,面试官问我了解尾递归吗,什么情况下编译器可以用尾递归优化。这里虽然使用 scala作为实例讲解尾递归,但请注意,这并不是scala语言中才有的特性先说定义,尾递归就是一种特殊的递归,这种递归编译器可以优化,怎么优化呢?如果递归的过程中可以用被调用...
如何 gitignore .gitignore 场景:有一个 repo,现在想要加一个文件,但不想被tracking,很自然的想法是将它放在 .gitignore 中,但是同时又不想 .gitignore被tracking 应该怎莫办呢?.gitignore 在被 tracking(commit) 之前 可以直接在 .gitignore 文件中将它自己加上如果 .gitignore 已经被tracking 了,那更好的方式是将 igno...
PAC与样本复杂度 这篇文章主要总结 PAC 学习框架以及样本复杂度相关的东西,大致来说就是:要保证以概率 1−δ1-\delta1−δ 使得 generalized error 小于 ϵ\epsilonϵ 需要多大的样本复杂度,以及时间复杂度才是好的。问题及约定符号约定两个 error 符号就是我们常说的 train error 与 true error接下来是定义我们要研究的问题简单的来...
Adaboost & gradient boosting学习总结 纸上得来终觉浅,觉知此事要躬行。综上,我什莫都不懂.这仅仅是个人的学习防忘笔记Adaboost关于 Adaboost 的算法描述其实很简单,有趣的是的它的误差分析:algorithm其中KaTeX parse error: No such environment: align at position 8: \begin{̲a̲l̲i̲g̲n̲}̲\epsilon_t &amp;amp;amp;...
kickstart 18 roundB Sherlock and the Bit Strings(状压dp/计数) 文章目录题目链接大意分析状态转移构造解code总结小技巧题目链接kickstart 18 roundB Sherlock and the Bit Strings大意寻找一个长度为 nnn 的字符串,满足以下条件:满足 kkk 个条件: ∑j=AiBisj=Ci,i∈{1,2,…,k}\sum_{j=A_i}^{B_i}s_j=C_i,i\in \{1,2,\dots,k\}∑j=Ai...
kickstart 2018 roundB A.no nine(digit dp) 文章目录题目链接分析code题目链接kickstart 2018 roundB A.no nine(digit dp)就是问: [a,b] 中不包含 9,不是9的倍数的数有多少个分析很裸的数位dp只要前面放的位数和相同,他们的结果应该是相同的好久没写了,中间出了一个bug, 注意状态 这里dp[pos][sum%9][state]超出范围和没有超出范围的结果完全不一样,将状态d...
kickstart 2018 :Scrambled Words(hash+complexity) 以我面试多次大厂的经验,无论是笔试还是面试,大厂的算法题目都不会考非常难实现的数据结构或者算法模板,通常喜欢的还是偏思维的 hash, 复杂度,dp,这样一些简单算法题目链接google kickstart 2018 Scrambled Words分析分析在题目网站有,首先需要想到的就是不同串的长度只有 O(∑wordsi)O(\sqrt{\sum words_i})O(∑wordsi...
凸优化简单学习笔记 本文来源于个人的凸优化学习笔记参考cs229 cvxoptnote,写成笔记的原因仅仅是想通过个人的笔记自己讲述与推导一下这些数学公式,内容可能会很简单,强力建议想得到一手资料的人好好学习文末参考资料凸集合定义就直接跳过了,这里简单写一些常见的凸集凸集的交, 设 Ci,i=1,2,3,...,nC_i,i = 1,2,3,...,nCi,i=1,2,3,...,n 是凸集,那么我们有...