
acm
木盏
坐标 北京
喜欢写博客的CV工程师
levio@pku.edu.cn
展开
-
回溯算法实现在特定路径下查找文件
**题目描述**:给定你一个路径,一个文件名。写脚本查找这个路径下(包括子目录)所有叫这个文件名的文件。原创 2021-11-23 18:08:44 · 807 阅读 · 0 评论 -
Python求解八皇后问题——回溯算法的一般形式
八皇后问题是经典回溯算法例题,用“暴力搜索”的方法求解。在Leetcode描述为:https://leetcode-cn.com/problems/eight-queens-lcci/设计一种算法,打印 8皇后在 8× 8棋盘上的各种摆法,其中每个皇后都不同行、不同列,也不在对角线上。这里的“对角线”指的是所有的对角线,不只是平分整个棋盘的那两条对角线由八皇后问题可以推广至N皇后问题。咱们先以4皇后来进行思考:- - Q - Q - - -...原创 2021-04-15 20:10:02 · 4036 阅读 · 0 评论 -
python判断平面内一个点是否在多边形内
采用射线法就可以判断一个点是否在多边形内, 只需从点出发向右侧水平做出一条射线,如果跟多边形交点个数为奇数,则点在多边形内,否则在多边形外。看一张图就可以看懂啦图片来自:https://www.jianshu.com/p/ba03c600a557输入:P点坐标[px, py]多边形poly顶点坐标[[x1, y1], [x2, y2], ..., [xn, yn]]返回:True or False首先,利用循环对多边形每条边做同样对待。然后,判断是否有跟点P水平右向的射线是否有交点,原创 2020-12-15 16:57:37 · 13407 阅读 · 22 评论 -
匈牙利算法(Hungarian Algorithm)
匈牙利算法是一种在多项式时间内求解任务分配问题的组合优化算法。换句话说就是,在可以接受的时间内去做匹配。1. 描述问题给定2个集合A和B,然后将AB中的元素完成一个连线。(这不就是小时候的连线题么-_-)匈牙利算法就是要找到两个集合促成最多的匹配对!最佳媒婆。这里最适合举的例子就是相亲会。集合A代表所有男嘉宾,集合B代表所有女嘉宾。每个男女嘉宾都有自己的心动嘉宾,此为重要前提。通过一个算法,完成最多的牵线。借用https://blog.youkuaiyun.com/dark_scope/articl原创 2020-10-28 22:13:30 · 10346 阅读 · 8 评论 -
腾讯秋招面试中的笔试题:找出二值图像的所有连通域
找出二值图像的所有连通域,面试官给了半个小时,其实还是很充分的,大概在规定时间内做出了这道题。发个blog稍微做个记录。分别用python和C++写出这道题。详细描述一下这道题:输入是一张二值化的矩阵,只含有0和255两种取值。求255的数值组成的连通域,规则就和围棋连通的规则一样,这道题像是在找围棋里白子的连通域。输出形式简单明了,比如这张图里有诸多连通域,那么对每个连通域进行编号,第...原创 2018-10-25 21:20:09 · 2909 阅读 · 3 评论 -
(leetcode233)Number of Digit One
Given an integer n, count the total number of digit 1 appearing in all non-negative integers less than or equal to n.Example:Input: 13Output: 6Explanation: Digit 1 occurred in the following number...原创 2018-10-10 15:22:07 · 389 阅读 · 0 评论 -
秋招笔试题---挑食的小明
代码都是自己的代码,并不一定是这道题的最优解法,仅供参考。小明很挑食,一共有N种食物可供挑选,他可以选其中的M种,也可以一种都不选,而且他从来不会选择连续的食物。比如,有三种食品,他可以选其中一种,也可以选2种,也可以不选。不能三种都选,因为没有隔开。输入N,返回他有多少种挑法。比如,输入:3输出:5挑法可以是不挑,1,2,3,13这五种做完这道题,主要的感受是...原创 2018-09-28 20:43:54 · 479 阅读 · 0 评论 -
两种方法对浮点数开根号(二分法和牛顿法,含证明)
二分法和牛顿法求根号是面试中的经典题,如果没提前接触过,经典题将成为经典难题。我先上代码,后面再对代码进行解释:#include<iostream>#include<string>#define PRECISION 0.0002using namespace std;//二分法//二分法通过缩小根值范围的方法来逼近结果float sqrt1(float ...原创 2018-09-22 13:33:51 · 7389 阅读 · 2 评论 -
leetcode(50)--求pow(x,y)
Implement pow(x, n), which calculates x raised to the power n (xn).Example 1:Input: 2.00000, 10Output: 1024.00000Example 2:Input: 2.10000, 3Output: 9.26100Example 3:Input: 2.00000, ...原创 2018-09-25 10:10:34 · 549 阅读 · 0 评论 -
【动态规划】--最长无重复子串(返回字符串长度vs返回字符串)
leetcode经典题型就是求最长无重复子串,返回值为字符串长度,如果要返回字符串要怎么办呢?一点点往下看就知道了。原题:给定一个字符串,找出不含有重复字符的最长子串的长度。示例:给定 "abcabcbb" ,没有重复字符的最长子串是 "abc" ,那么长度就是3。给定 "bbbbb" ,最长的子串就是 "b" ,长度是1。给定 "pwwkew" ,最长子串是 "wke"原创 2018-09-24 16:02:15 · 4792 阅读 · 0 评论 -
KMP算法笔记
KMP算法经典高效的字符串匹配算法。腾讯2018年算法岗笔试题的第一题考了KMP算法的应用,没掌握KMP的在复杂度上肯定是通过不了的。也是因为腾讯笔试题,我才打算好好了解一下KMP算法。网上有很多优秀的关于KMP算法的文章,我这篇文章只是总结自己的理解。这里的字符串匹配并不是匹配两个字符串是否相等,而是匹配主串中和模式串相同的子串。public static int KMP(String t...原创 2018-09-18 11:31:03 · 264 阅读 · 0 评论