自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(59)
  • 收藏
  • 关注

原创

输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)class Solution {public: bool issubtree(TreeNode* pRoot1, TreeNode* pRoot2) { if(pRoot1==NULL && pRoot2==NULL ) return true; e

2016-09-16 17:21:28 511

原创 调整数组顺序使奇数位于偶数前面

题目描述输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变题目很简单,关键是要保持奇数和奇数 偶数和偶数之间的关系不能变化,就导致我们一定要用稳定的算法,快排啥的就算没戏了,考虑到我们时间复杂度,我们决定使用归并排序的思想,这可是稳定的排序算法(common的算法

2016-09-15 11:55:21 929

原创 剑指offer--替换空格

题目描述请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。//从前往后计算要最终的长度,从后往前慢慢填入变换后的字符串class Solution {public:void replaceSpace(char *str,int length) { int count

2016-09-06 17:06:17 447

转载 spark的shuffle过程优化那点事

Background在MapReduce框架中,shuffle是连接Map和Reduce之间的桥梁,Map的输出要用到Reduce中必须经过shuffle这个环节,shuffle的性能高低直接影响了整个程序的性能和吞吐量。Spark作为MapReduce框架的一种实现,自然也实现了shuffle的逻辑,本文就深入研究Spark的shuffle是如何实现的,有什么优缺点,与Hadoop Ma

2016-08-28 18:55:52 3081

原创 spark的性能优化

因为之前在tesla集群上申请了1000个节点被喷之后,现在只敢申请100个节点,后来导致一个严重的结果,自从100节点以来再也没有跑出结果。。。。。。进而意识到了spark优化的重要性,现再次总结一下:1.一个通用的调整并行度的方式:首先要明确一个概念,Hadoop为每一个partition创建一个task, 我们使用task数来控制并行度,默认情况下是有输入源(HDFS) block的数量

2016-08-15 20:53:42 1086

转载 特征选择和特征理解

作者:Edwin Jarvis特征选择(排序)对于数据科学家、机器学习从业者来说非常重要。好的特征选择能够提升模型的性能,更能帮助我们理解数据的特点、底层结构,这对进一步改善模型、算法都有着重要作用。特征选择主要有两个功能:减少特征数量、降维,使模型泛化能力更强,减少过拟合增强对特征和特征值之间的理解拿到数据集,一个特征选择方法,往往很难同时完成这两个目的。通常情况下,我们经常

2016-05-23 16:52:01 11254 2

原创 推荐系统-利用用户行为数据

用户的行为数据介绍:     用户的行为主要分为两种-显性反馈行为 和 隐性反馈行为 ,显性反馈行为主要包括 评分 和喜欢/不喜欢 ,youtube最早是使用是使用五分评价系统的,但是只有用户很不满意和特别满意的情况下才会评分,因此又把它变成了二级评分系统。 隐式反馈行为就是页面的浏览行为。用户的行为分析:    用户的数据分布大都满足一种长尾分布,就是 每个单词出现的频率和他在热门排

2016-05-10 15:57:21 17701

原创 236. Lowest Common Ancestor of a Binary Tree

Given a binary tree, find the lowest common ancestor (LCA) of two given nodes in the tree.According to the definition of LCA on Wikipedia: “The lowest common ancestor is defined between two node

2016-04-14 15:19:39 429

原创 114. Flatten Binary Tree to Linked List

114. Flatten Binary Tree to Linked ListGiven a binary tree, flatten it to a linked list in-place.class Solution {public: void flatten(TreeNode* root) { TreeNode *firstnode=makeTree(

2016-04-11 12:29:05 478

原创 leetcode 234. Palindrome Linked List

玩物丧志了这么久 ,,,,也该做道题活动一下脑子啦。。。leetcode 234. Palindrome Linked ListGiven a singly linked list, determine if it is a palindrome.( O(n) time and O(1) space)我的想法: 先遍历一遍,把value放到栈里,利用栈的特性,对比栈里的值和

2016-04-08 16:24:24 380

转载 关于使用2d照片进行3d建模

Autodesk 的 123D Catch 让我们能够很简单的根据一组照片构建3D物体,你只需要从各个角度拍摄希望建模的物体,然后通过 123D Catch 将照片上传到 Autodesk 的云端服务器,等待几分钟之后,就能下载到完成的模型,是不是像变魔术一样?但是在上传照片和下载模型之间到底发生了什么,由照片重建三维模型是个怎样的过程,123D Catch 却没有告诉好奇的我们。

2016-04-05 21:13:39 17953 4

原创 贡献两道简单的leetcode

111.Given a binary tree, find its minimum depth.The minimum depth is the number of nodes along the shortest path from the root node down to the nearest leaf node.class Solution {public: int m

2016-03-29 13:59:11 425

原创 来自鹅场的又一次致电

今天这个电话真是打的好巧,我下午前脚刚进老师的门,准备汇报工作,马上hr电话就打来了,我马上机智的说,老师 ,我去实验室把XXX 找来,马上转身接了电话,不要说我太机智,hr姐姐帮我预定了下午的面试时间,心想鹅场的办事效率超高呀(作者昨天刚接到一面的电话啊嘿)。。。接着,我用快到飞起来的语速给老师汇报了工作,去实验室准备面试去了。好像题外话说的有点多。。。。。。。。。。。。。。。。。。。。。。

2016-03-28 20:39:14 737 1

原创 某鹅的面试

下午刚到实验室,正在做实验之际,一条来自鹅场短信,请问下午有时间电话面试么,激动地赶紧回复有时间呀,没错,就是周末,周末鹅场难道也不休息么?勤奋的企业!!!!于是我转去了僻静的楼道间,静静等待电话。电话是个略带南方口音的男声打来的,首先问了能不能来深圳实习,of course,我就是冲着深圳去的,又问了一些基本情况,你什么时候毕业呀?这些问题对我的紧张情绪缓解很多。接着开始进入正题,介绍一

2016-03-27 17:55:19 945

转载 bitmap与bloomfilter(比较清晰的讲解)

转载地址:http://blog.csdn.net/gugemichael/article/details/8013150今天,有个同学向我咨询大数据的一些面试题,其中一类比较有代表性比如判断是否在集合内,比如10个url,判断一个url是否在集合内,还比如有个1~100万个连续无序数字,随机取出里面的N个,求这N个数字等等。这类问题都需要一个大的数据集合,而且每个数据单元都很小,比如一个

2016-03-26 16:39:26 4179

转载 stl: map和hashmap比较 hashmap与hashtable

map与hashmap2。map简介map是一类关联式容器。它的特点是增加和删除节点对迭代器的影响很小,除了那个操作节点,对其他的节点都没有什么影响。对于迭代器来说,可以修改实值,而不能修改key。3。map的功能自动建立Key - value的对应。key 和 value可以是任意你需要的类型。根据key值快速查找记录,查找的复杂度基本是Log(N

2016-03-26 14:22:08 806

原创 某A电面的详细解释

1.c++多态,用什么实现,以及好处最常见的用法就是声明一个基类,让其子类继承他的虚函数,使用指向子类的父类指针调用该虚函数,则会调用子类相应的函数,如果在父类不声明为虚函数,则会调用父类的方法。继承的用处是拓展已存在的代码,封装可以让代码模块化,以上都是为了接口的重用,而多态可以实现接口重用,不论传递过来的是哪个类型的对象,都可以用同一个接口调用。2.数组和链表的区别,如何选

2016-03-25 15:57:57 442

原创 16年第一个电面

大清早,刚到实验室,手机清脆的铃声响起,早有估计,但是依旧蒙圈。。。。健步如飞跑到楼道呀,一点不夸张呀,气都喘不上了。对方是一个委婉的男声,首先就是自我介绍,blabla~~~~(很紧张),说完,沉默了空白,几个意思,于是项目来补,blablabla~~~,不是很感兴趣的样子。接下来,询问我的方向在tb上能有什么应用,啊?blablabla~~~胡扯之。果然看中了我mapreduc

2016-03-24 11:47:31 487

原创 112. Path Sum My Submissions Question

Given a binary tree and a sum, determine if the tree has a root-to-leaf path such that adding up all the values along the path equals the given sum二叉树的深度遍历的问题,下面提供了 非递归和递归两种算法递归:class Solution {

2016-03-23 22:11:15 316

转载 pca与svd的好文

本文由LeftNotEasy发布于http://leftnoteasy.cnblogs.com,前言:    上一次写了关于PCA与LDA的文章,PCA的实现一般有两种,一种是用特征值分解去实现的,一种是用奇异值分解去实现的。在上篇文章中便是基于特征值分解的一种解释。特征值和奇异值在大部分人的印象中,往往是停留在纯粹的数学计算中。而且线性代数或者矩阵论里面,也很少讲任何跟特征值与奇

2016-03-21 16:53:58 1205

原创 88. Merge Sorted Array

Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array.Note:You may assume that nums1 has enough space (size that is greater or equal to m + n) to hold addit

2016-03-21 12:09:50 293

原创 279. Perfect Squares

279. Perfect SquaresGiven a positive integer n, find the least number of perfect square numbers (for example, 1, 4, 9, 16, ...) which sum to n.For example, given n = 12, return 3 because 1

2016-03-17 20:03:00 403

原创 剑指offer-链表从后往前打印

从尾到头打印链表题目描述输入一个链表,从尾到头打印链表每个节点的值。输入描述:输入为链表的表头解法一 : (递归)class Solution {public: vector printListFromTailToHead(struct ListNode* head) { vector re;

2016-03-16 14:31:08 1002

原创 sklearn-基础使用

数据清洗可以用pandas,数据predict的时候就要用到大名鼎鼎的sklearn了,里面包含了很多基础的算法,可以帮助Data Scientist 解决很多问题。(a)data normalizationfrom sklearn import preprocessing# normalize the data attributesnormalized_X = prepr

2016-03-16 12:31:31 9522

转载 很好的static用法总结,真真受教了

C++的static有两种用法:面向过程程序设计中的static和面向对象程序设计中的static。前者应用于普通变量和函数,不涉及类;后者主要说明static在类中的作用。1.面向过程设计中的static1.1静态全局变量在全局变量前,加上关键字static,该变量就被定义成为一个静态全局变量。我们先举一个静态全局变量的例子,如下: //Example 1#include

2016-03-15 12:51:28 353

原创 153. Find Minimum in Rotated Sorted Array

Suppose a sorted array is rotated at some pivot unknown to you beforehand.(i.e., 0 1 2 4 5 6 7 might become 4 5 6 7 0 1 2).Find the minimum element.You may assume no duplicate exists in

2016-03-14 17:57:10 339

转载 mapreduce的shuffle阶段详解

Shuffle过程是MapReduce的核心,也被称为奇迹发生的地方。要想理解MapReduce, Shuffle是必须要了解的。我看过很多相关的资料,但每次看完都云里雾里的绕着,很难理清大致的逻辑,反而越搅越混。前段时间在做MapReduce job 性能调优的工作,需要深入代码研究MapReduce的运行机制,这才对Shuffle探了个究竟。考虑到之前我在看相关资料而看不懂时很恼火,所以在这里

2016-03-13 21:19:11 628

原创 63. Unique Paths II

Follow up for "Unique Paths":Now consider if some obstacles are added to the grids. How many unique paths would there be?An obstacle and empty space is marked as 1 and 0 respectively in the

2016-03-13 19:33:33 252

转载 EM算法详细讲解

EM算法本文试图用最简单的例子、最浅显的方式说明EM(Expectation Maximization)算法的应用场景和使用方法,而略去公式的推导和收敛性的证明。以下内容翻译自《Data-Intensive Text Processing with MapReduce》。Maximum Likelihood EstimationMaximum Likelihood Esti

2016-03-11 16:21:41 2026

转载 析构函数和构造函数的调用顺序

先看看构造函数的调用顺序规则,只要我们在平时编程的时候遵守这种约定,任何关于构造函数的调用问题都能解决;构造函数的调用顺序总是如下:1.基类构造函数。如果有多个基类,则构造函数的调用顺序是某类在类派生表中出现的顺序,而不是它们在成员初始化表中的顺序。2.成员类对象构造函数。如果有多个成员类对象则构造函数的调用顺序是对象在类中被声明的顺序,而不是它们出现在成员初始化表中的顺序。3.派生类

2016-03-05 21:33:54 587

原创 三大算法总结

一。分治:基本思想:      将一些难以解决的大问题分割成规模较小的相同问题,对于一个问题规模为n的问题,如果能直接解决,则解决,否则将其拆开,分治法适用的情况  分治法所能解决的问题一般具有以下几个特征:  1) 该问题的规模缩小到一定的程度就可以容易地解决  2) 该问题可以分解为若干个规模较小的相同问题,即该问题具有最优子结构性质。

2016-03-05 20:50:04 1586

转载 深入浅出的讲解c++多态性

1. 用virtual关键字申明的函数叫做虚函数,虚函数肯定是类的成员函数。2. 存在虚函数的类都有一个一维的虚函数表叫做虚表。类的对象有一个指向虚表开始的虚指针。虚表是和类对应的,虚表指针是和对象对应的。3. 多态性是一个接口多种实现,是面向对象的核心。分为类的多态性和函数的多态性。4. 多态用虚函数来实现,结合动态绑定。5. 纯虚函数是虚函数再加上= 0。6. 抽象类是指包

2016-03-03 11:37:00 429

原创 110. Balanced Binary Tree

Given a binary tree, determine if it is height-balanced.For this problem, a height-balanced binary tree is defined as a binary tree in which the depth of the two subtrees of every node never diffe

2016-03-02 17:45:17 479 1

原创 pipeline+crossvalidation 调整参数值

由于刚刚进入这个领域,用sklearn在几个toy dataset上跑了几个算法后,就在发愁如何调整参数值的事情,在看了sklearn的官方文档和一些csdn之后整理如下:官方网站给出了如上的一种评分方式,以这个为基础,通过不同的切分train dataset得到train和test 我们可以得到一个平均得分(当然通过改变参数scoring的值,具体规则在这http://sci

2016-01-26 11:44:17 1644

转载 logistic Regression

1.引言看了Stanford的Andrew Ng老师的机器学习公开课中关于Logistic Regression的讲解,然后又看了《机器学习实战》中的LogisticRegression部分,写下此篇学习笔记总结一下。首先说一下我的感受,《机器学习实战》一书在介绍原理的同时将全部的算法用源代码实现,非常具有操作性,可以加深对算法的理解,但是美中不足的是在原理上介绍的比较粗略,很多细节没有具

2016-01-09 14:27:13 456

转载 feature scaling的作用

转自:http://blog.sina.com.cn/s/blog_7f2889330101awle.html定义:Feature scaling is a method used to standardize the range of independent variables or features of data. In data processing, it is also kno

2016-01-05 18:19:10 1176

转载 sscanf用法

此文所有的实验都是基于下面的程序: char str[10]; for (int i = 0; i 执行完后str的值为 str = "!!!!!!!!!!" 我们把str的每个字符都初始化为惊叹号,当str的值发生变化时,使用printf打印str的值,对比先前的惊叹号,这样就可以方便的观察str发生了怎样的变化。下面我们做几个小实验,看看使用sscanf

2015-12-29 19:10:44 371

原创 ccf 2014-09-4

试题编号:201409-4试题名称:最优配餐时间限制:1.0s内存限制:256.0MB问题描述:问题描述  栋栋最近开了一家餐饮连锁店,提供外卖服务。随着连锁店越来越多,怎么合理的给客户送餐成为了一个急需解决的问题。  栋栋的连锁店所在的区域可以看成是一个n×n的方格图(如下图所示),方格的格点上的位置上可能包含栋栋的

2015-12-25 18:41:05 429

原创 ccf-201412-2 Z字形扫描

问题描述  在图像编码的算法中,需要将一个给定的方形矩阵进行Z字形扫描(Zigzag Scan)。给定一个n×n的矩阵,Z字形扫描的过程如下图所示:  对于下面的4×4的矩阵,  1 5 3 9  3 7 5 6  9 4 6 4  7 3 1 3  对其进行Z字形扫描后得到长度为16的序列:  1 5 3 9 7 3 9 5 4 7 3 6 6 4 1 3

2015-12-22 16:29:57 989

原创 ccf认证-201503-4

问题描述  给定一个公司的网络,由n台交换机和m台终端电脑组成,交换机与交换机、交换机与电脑之间使用网络连接。交换机按层级设置,编号为1的交换机为根交换机,层级为1。其他的交换机都连接到一台比自己上一层的交换机上,其层级为对应交换机的层级加1。所有的终端电脑都直接连接到交换机上。  当信息在电脑、交换机之间传递时,每一步只能通过自己传递到自己所连接的另一台电脑或交换机。请问,电脑与电脑

2015-12-15 17:57:06 743 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除