算法设计类别订阅
关于连通性问题(学习)
题目这个题目是在数学中国上看到的,具体的题目描述如下:
问题示例:连通性(connectivity)
假如已知一个整数对(pair)序列,其中每个整数代表某种类型的一个对象,而且将p-q对解释成“p与q连通”。
假定关系“与…….”是可传递的:
如果p与q连通,同时q与r连通,则p与r连通.
我们的目的是编写一段程序,从集合(set)中过滤额外连接对;当程序输入一个对p-q,仅当程序此时已经看到的对不能通过可传递性证明p与q连通时,它才输出该对。如果前面的对表明p与[……]
关于N点求最小半径的问题
[……]
百度实习生面试题
一面:
第一题、任意给一个数,试证明这个数的某个倍数的十进制表示是01串,比如3的倍数111是二进制表示,5的倍数10是二进制表示,等等。
第二题、证明素数有无穷多个。
第三题、给一个很大的数组,里面有两个数只出现过一次,其他数都出现过两次,把这两个数找出来。
第四题、把一个链表逆过来,要求空间复杂度O(1),这个算简单的。
二面:
1、是如何统计代码行数以及注释的行数,并写出具体的实现代码。
2、要求用最快的速度求两个数组的[……]
科普:隐马尔可夫模型
最近准备做个语音识别小玩具,接触到一些识别技术,和大家一起分享~
隐马尔可夫模型(Hidden Markov Model,HMM)作为一种统计分析模型,创立于20世纪70年代。80年代得到了传播和发展,成为信号处理的一个重要方向,现已成功地用于语音识别,行为识别,文字识别以及故障诊断等领域。
青蛙过河python版
前几天发了一个青蛙过河https://www.xushine.net/?p=1110
D大的感叹历历在目啊
现在放个python的版本出来~
trace_stack = []
def recursive(frog_list, final_list):
global trace_stack
if frog_list == final_list:
trace_stack.append(frog_list)
retur[……]
左偏树模板
Xushine研究院一致认为模板才是王道
首先说说左偏树
单调栈构造笛卡尔树
其实这个是来自于ZOJ的一道ACM题目
题目地址:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=2452
笛卡尔树是一种特定的二叉树数据结构,可由数列构造,在范围最值查询、范围top k查询(range top k queries)等问题上有广泛应用。它具有堆的有序性,中序遍历可以输出原数列。
以第一关键字 main_key 排升序,O(n*log(n));
单调栈的应用,O(n)时间构造笛卡尔树;[……]
青蛙的烦恼 (题解)
题目大意:
池塘里有n片荷叶(1≤n≤1000),它们正好形成一个凸多边形。按照顺时针方向将这n片荷叶顺次编号为1,2,…,n。
有一只小青蛙站在1号荷叶上,它想跳过每片荷叶一次且仅一次(它可以从所站的荷叶跳到任意一片荷叶上)。同时,它又希望跳过的总距离最短。
请你编程帮小青蛙设计一条路线。
这个题还是比较明显的是贪心策略解决动态规划问题~
#include<map>
#include<set>
#include<cmath>
#inc[……]
科普~KM算法
今天和朋友聊天,聊到了KM,今天Xushine研究院就和大家讨论下KM算法~
先来看看KM的算法描述:
KM算法求的是完备匹配下的最大权匹配: 在一个二分图内,左顶点为X,右顶点为Y,现对于每组左右连接XiYj有权wij,求一种匹配使得所有wij的和最大。
再来看看基本原理~
该算法是通过给每个顶点一个标号(叫做顶标)来把求最大权匹配的问题转化为求完备匹配的问题的。设顶点Xi的顶标为A[ i ],顶点Yj的顶标为B[ j ],顶点Xi与Yj之间的边权为w[i,j]。在算法执行过程中的任一[……]