- 博客(11)
- 资源 (1)
- 收藏
- 关注
原创 第k个数
题目描述有一些数的素因子只有3、5、7,请设计一个算法,找出其中的第k个数。 给定一个数int k,请返回第k个数。保证k小于等于100。 测试样例:算法: 使用3个队列分别保存着3的倍数,5的倍数,7的倍数。每次循环找到当前队头即最小值,这个值就是第n个所求数。 这个值出自哪个队列x,说明现在3个队列内的所有数的最小数是x的倍数,那么需要将所有队头继续扩大x倍,因为x倍的数最小了key:3
2016-08-07 12:19:13 317
原创 碰撞的蚂蚁
题目描述在n个顶点的多边形上有n只蚂蚁,这些蚂蚁同时开始沿着多边形的边爬行,请求出这些蚂蚁相撞的概率。(这里的相撞是指存在任意两只蚂蚁会相撞) 给定一个int n(3<=n<=10000),代表n边形和n只蚂蚁,请返回一个double,为相撞的概率。思路:每个蚂蚁爬行的方向都有两个,即围绕多边形顺时针爬和逆时针爬,因此n个蚂蚁爬行的方法有2^n种。 只有当所有的蚂蚁按照同一个方向爬行才能保证所有
2016-08-07 00:05:44 417
原创 二进制小数
十进制小数转其他进制小数:二进制对十进制小数乘2得到的整数部分和小数部分,整数部分既是相应的二进制数码,再用2乘小数部分(之前乘后得到新的小数部分),又得到整数和小数部分. 如此不断重复,直到小数部分为0或达到精度要求为止.第一次所得到为最高位,最后一次得到为最低位 如:0.25的二进制 0.25*2=0.5 取整是0 0.5*2=1.0 取整是1 即0.25的二进制为 0.01 (
2016-08-06 21:04:36 1188
原创 最近公共祖先
题目描述有一棵无穷大的满二叉树,其结点按根结点一层一层地从左往右依次编号,根结点编号为1。现在有两个结点a,b。请设计一个算法,求出a和b点的最近公共祖先的编号。 给定两个int a,b。为给定结点的编号。请返回a和b的最近公共祖先的编号。注意这里结点本身也可认为是其祖先。 测试样例: 2,3 返回:1算法: 因为是满二叉树,所以下标有规律可循:哪一个分支大,哪一个除2向上找父节点,直到相
2016-08-06 11:58:57 235
原创 输出树单层结点
题目描述对于一棵二叉树,请设计一个算法,创建含有某一深度上所有结点的链表。 给定二叉树的根结点指针TreeNode* root,以及链表上结点的深度,请返回一个链表ListNode,代表该深度上所有结点的值,请按树上从左往右的顺序链接,保证深度不超过树的高度,树上结点的值为非负整数且不超过100000。class TreeLevel {public: ListNode* getTreeL
2016-08-06 10:25:58 238
原创 有向路径检查
题目描述对于一个有向图,请实现一个算法,找出两点之间是否存在一条路径。 给定图中的两个结点的指针UndirectedGraphNode* a,UndirectedGraphNode* b,请返回一个bool,代表两点之间是否存在一条路径(a到b或b到a)。算法: 广度优先遍历。因为是有向图,所以以a开头遍历一次,以b开头遍历一次。 遍历的过程中如果找到了另一个结点,说明有路径,如果遍历结束后扔
2016-08-06 00:00:35 385
原创 判断字符串是不是一个字符串的翻转
算法: 1、翻转字符串:首尾指针交换 2、部分翻转:两部分分别翻转,再整体翻转。共翻转三次得到部分翻转 3、本题就是找每一个位置进行部分翻转,检查是否是另一字符串的翻转。class ReverseEqual {public: string reverse(string str){ if(str == "") return str;
2016-08-05 11:46:12 473
原创 BST判断
算法:中序遍历树,如果是严格升序的序列,则是,否则不是BSTclass Solution {public: bool flag = true; bool isValidBST(TreeNode *root) { if(root == NULL) return true; long pre = LONG_MIN;
2016-08-04 16:19:39 445
原创 Insert Delete GetRandom O(1)
Design a data structure that supports all following operations in O(1) time.insert(val): Inserts an item val to the set if not already present. remove(val): Removes an item val from the set if present
2016-08-04 11:52:09 1215 4
原创 Recover Binary Search Tree
Two elements of a binary search tree (BST) are swapped by mistake.Recover the tree without changing its structure.算法:中序遍历二叉树,如果后边的数边前边的小,则说明出错了。如果没有找到第二个结点说明是相邻位置出错了。class Solution {public: bool f
2016-08-03 22:42:42 180
原创 相关文章推荐&推荐系统排名
技术方案Word2vec+TextRank+bi_kmeans 1. 经过调研列表内容在语料比较大的时候w2v能够准确的表达词的意义,而越是相关的词之间cos距离越大。 2. 利用词之间的cos距离可以构建text rank算法的转移矩阵,代表各个词之间的转移概率,基于的假设是:如果一个词越重要,那么和它相关的词也是重要的,有此提取文章的关键词和主题。主题的计算依赖text rank返回的重要
2016-08-03 18:05:17 547
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人