自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 资源 (8)
  • 收藏
  • 关注

原创 (三)Spark学习系列

本章节讲一讲spark的Shuffle模块shuffle模块作用是将若干node节点上面的数据重新分割,再划分到不同的节点中。就想是把牌收集到了一起,洗一下,重新再发给牌友一样。那么这里面的关键问题是:1、单个节点的数据量大,如果有的数据需要集中处理怎么办2、为了节约带宽,可能需要将数据压缩以后再传3、需要通过网络传输,序列化和反序列化也是个问题。对于单个task说,tas

2016-04-29 15:07:01 357

原创 需要手写的排序算法---希尔排序

void Shell(int array[] , int n){ for(int gap = n/2 ; gap > 0 ; gap /= 2){ for(int i = 0 ; i < gap ; i++ ){ for(int j = i + gap ; j < n ; j+=gap){ //利用插入排序,将每个分组中的元素放到指定的地方 int tmp = array

2016-04-29 10:40:05 332

原创 (二)Spark学习系列

(一)讲到了stage划分好了,这一章我开始学习任务是如何下发并且执行的。在spark计算出了哪些partition是需要重新计算的后,便开始各个partition生成计算的task,然后封装成为taskset,然后提交给taskscheduler。一个taskset里面存的是一组逻辑 完全相同的task。每个taskscheduler对应了一个 schedulerBackend,sche

2016-04-28 18:00:51 244

原创 需要手写的算法之-----堆排序算法

void HeapCore(vector &vec ,size_t size, size_t end){ size_t i = end ; size_t j = i ; bool flag = false; do{ flag = false; if(i * 2 vec[i *2]){ j = i*2; } if(i *2 + 1 vec[i *2] ) {

2016-04-28 11:48:45 1500

翻译 统计1到N之间所有数字中1的个数

本文中的code和思想来自于https://leetcode.com/discuss/44281/4-lines-o-log-n-c-java-python ,感谢作者code如下:int countDigitOne(int n) { int ones = 0; for (long long m = 1; m <= n; m *= 10) { int a =

2016-04-27 10:47:26 3818

原创 《effectivec++》不在构造和析构过程中调用virtual函数

class Base{public: Base() { Foo(); } virtual ~Base(){} virtual void Foo() { std::cout << 1 << std::endl; } };class Derive : public Base{public: Derive(int v) :val_

2016-04-26 15:14:47 284

原创 关于子类调用基类的构造函数的各种问题

基类写了默认的构造函数,子类未明确调用 :(√) :这个情况,子类就可以默认调用到默认的构造函数基类写了的默认构造函数,子类明确调用 :(√) :这个情况,子类就可以默认调用到默认的构造函数基类没有写默认的构造函数,子类明确调用 : (√) : 这个情况,系统会给基类生成一个默认的构造函数,这样,子类就可以默认调用基类没有写默认的构造函数,子类未明确调用 : (√):这个情况,系统会给

2016-04-26 14:25:37 1263

原创 extern "C" c++如何实现函数的重载

待续

2016-04-26 14:17:39 489

原创 最小编辑距离

问题:Given two words word1 and word2, find the minimum number of steps required to convert word1 to word2. (each operation is counted as 1 step.)You have the following 3 operations permitted on a wo

2016-04-26 11:22:31 263

原创 待整理。。。二叉排序树转换成为双向链表

待整理

2016-04-26 09:36:24 346

原创 shared_from_this

什么时候需要用到shared_from_this呢?当我们的函数需要能够返回到函数的智能指针的时候,因为如果是返回的this裸指针,那么这个对象的生命周期谁来保证呢?还有就是,如果我们用share_ptr来管理对象生命周期,那么整个代码中都应该是用share_ptr来管理。这里只是讲一下shared_from_this的用法算了,发现自己都懒得讲了,可以参考下面的提法,

2016-04-25 17:44:05 252

原创 (一)Spark学习系列

本文讲讲Spark中的数据组织方式和stage的划分以及stage的调度Spark中数据的组织通过RDD方式完成。RDD可以理解成为一组数据加上对数据的操作。RDD上面的数据是不可以更改的,但是RDD可以从一个RDD转换成为另外的一个RDD。窄依赖就类似于图上面的这种,一个前面的RDD中的partition只会被后面的一个RDD的partition所依赖。宽依赖就类似于

2016-04-25 15:42:47 373

原创 需要手写的算法之----------快速排序的排序的列子

int Partion(vector &vec , int begin , int end ){ if(begin == end ){ return begin; } if(begin vec.size() - 1){ cout<<"ERROR"; return -1; } int tmp = vec[begin]; while (begin < end ){ wh

2016-04-21 10:40:17 919 1

原创 google hash table ------稀疏hash表之sparse hashtable

A sparse hashtable is a particular implementation of// a hashtable: one that is meant to minimize memory use.// It does this by using a *sparse table* (cf sparsetable.h),// which uses between 1

2016-04-19 23:16:48 1742

转载 快速排序算法的时间复杂度为什么是O(NlogN),还有O(N^2)

转载自:http://www.cnblogs.com/pugang/archive/2012/07/02/2573075.html经常听人谈起各种排序算法的时间复杂度,这个是O(n2)的,那个是O(n)的,这些人讲起来可谓滔滔不绝,但是你停下来问问他为什么这个是这个复杂度,他是怎么算出来的?往往没几个人能说出来。这个是一个浮躁的社会,大家都追求速度,到处复制,粘贴代码,拿人家的代码跑一

2016-04-15 15:37:48 16280

原创 查找出现次数出现了一半的数

数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。题目是这样子的,= =,当然,能够想到的办法可以用hash表来统计下每个元素出现的个数,然后判断是不是有超过了总数一半的数字就可以得出答案了。然而。。。作为一个比较折腾的

2016-04-14 15:04:29 395

原创 找到一个数的质因子

如果像博主一样第一次写出判断一个数是不是质数的函数,那这个解法就比较out了so。。。真正的解法是:int main(){int num ;cin >> num;int tmp = num ;for(int i = 2 ; i {while( tmp % i == 0){couttmp /= i; }}}可以这样写的原因大概也是一目了

2016-04-13 17:14:07 1331

原创 google hash表之dense_hash

https://github.com/sparsehash/sparsehashdense_hash 是google的一个开源的hashtable的实现。可以通过value找到key  ExtractKey,支持(反)序列化到文件,现在主要分析非(反)序列化部分成员变量  Settings settings;    KeyInfo key_info;  size

2016-04-13 15:43:40 4840

原创 二叉树的序列化和反序列化

感觉有点难

2016-04-08 14:43:36 180

原创 字符串的排列组合

class Solution { public: void change(string str , size_t index){ if(index == str.length()){ set_.insert(str); return; } for(size_t i = index ;

2016-04-07 17:32:41 246

翻译 关于shared_ptr

其中主要说的是两个点,1、shared_ptr中有两个数据成员,一个指针,指向了data,另外一个,是指向了引用计数。2、一个shared_ptr复制需要两个步骤,一是复制data的指针,另外是将引用计数+1。这两个操作本身是原子的,但是这两个步骤不是原子的。多线程的环境中,就会出现,第一个线程复制了data的指针,但是却没有来得及将引用计数+1就切换到了下一个线程的情况。集体

2016-04-01 10:55:00 391

vim配置插件-diwuge

vim配置插件

2017-08-27

vim配置插件-dierge

vim配置插件

2017-08-27

vim配置插件-disige

vim配置插件

2017-08-27

vim配置插件-第三个

vim配置插件

2017-08-27

vim配置插件

vim配置插件

2017-08-27

俄罗斯方块C

俄罗斯方块、c语言

2013-06-15

zigbee/api接口

cc2431的,做定位系统的可以用得上大的瓦房

2011-10-15

空空如也

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

TA关注的人

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