09 2017 档案

求二叉树中节点的最大距离
摘要:struct node { node *left; node *right; int maxleft; int maxright; char value; }; int max=0; void findMaxLen(node *root) { if(root==NULL) return ; if(root->left=NUL... 阅读全文

posted @ 2017-09-27 17:47 泡面小王子 阅读(117) 评论(0) 推荐(0)

设计模式-工厂模式
摘要:工厂模式分为三类:简单工厂模式、工厂方法模式、抽象工厂模式; 第一种:简单工厂模式 第二类:工厂方法模式 所谓工厂方法模式:是指定义了一个用于创建对象的接口,让子类决定实例化那个类。Factory Method 使一个类的实例化延迟到其子类。工厂方法也有缺点:就需要增加一个对象的工厂,如果这家公司发 阅读全文

posted @ 2017-09-15 22:37 泡面小王子 阅读(164) 评论(0) 推荐(0)

设计模式-单例模式
摘要://懒汉式单例类 class singleton { public: static singleton *getInstance() { if(instance==NULL) instance=new singleton(); return instance; } private: static single... 阅读全文

posted @ 2017-09-15 22:01 泡面小王子 阅读(135) 评论(0) 推荐(0)

滴滴校招0910
摘要:#include using namespace std; int data[100000]; int main() { int num; while(cin>>num) { int number; for(int i=0;i>number; data[i]=number; } i... 阅读全文

posted @ 2017-09-10 17:05 泡面小王子 阅读(111) 评论(0) 推荐(0)

八大排序算法之七-归并排序
摘要:归并类的排序算法 归并:将两个或两个以上的有序表组合成一个新的有序表。 内部排序中,通常采用的是 2-路归并排序。即:将两个位置相邻的记录有序子序列归并为一个记录有序的序列。归并排序是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用 阅读全文

posted @ 2017-09-10 14:38 泡面小王子 阅读(329) 评论(0) 推荐(0)

单链表的实现(创建+排序(选择))
摘要:#include #include using namespace std; typedef struct Lnode { Lnode *next; int data; }Lnode,*pLnode; pLnode createList(int n) { Lnode*head=(Lnode*)malloc(sizeof(Lnode)); head->nex... 阅读全文

posted @ 2017-09-07 14:43 泡面小王子 阅读(357) 评论(0) 推荐(0)

华为笔试
摘要:笔试题一: 笔试题二: 笔试题三: 阅读全文

posted @ 2017-09-06 21:48 泡面小王子 阅读(226) 评论(0) 推荐(0)

寻找数组中的最大值和最小值
摘要:解法一:将寻找数组中的最大值和最小值看成是两个独立的问题。分别求出最大值和最小值即可。这样需要2*N次的比较才能求出最大的数和最小的数。 解法三:解法已经将比较次数降低到1.5N次,但是它已经破坏原来的数组。可以不需要调整数组元素的位置,直接用两个变量Max和Min来存储当前的最大值和最小值。同一组 阅读全文

posted @ 2017-09-06 16:51 泡面小王子 阅读(585) 评论(0) 推荐(0)

最小的K个数
摘要:输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,。 方法一:快排 方法二:选择排序;(部分排序) 方法三:全排序 阅读全文

posted @ 2017-09-06 13:56 泡面小王子 阅读(244) 评论(0) 推荐(0)

求N!的二进制表示中最低位1的位置。(编程之美)
摘要:要求的是N!的二进制表示中最低位1的位置。给定一个整数N,求N!二进制表示的最低位1在第几位?例如:给定N = 3,N!= 6,那么N!的二进制表示(1 010)的最低位1在第二位。 为了得到更好的解法,首先要对题目进行一下转化。 首先来看一下一个二进制数除以2的计算过程和结果是怎样的。 把一个二进 阅读全文

posted @ 2017-09-04 09:20 泡面小王子 阅读(1363) 评论(0) 推荐(0)

两个队列实现栈
摘要:http://www.cnblogs.com/kaituorensheng/archive/2013/03/02/2939690.html 思路 q1是专职进出栈的,q2只是个中转站 入栈:直接入队列q1即可 出栈:把q1的除最后一个元素外全部转移到队q2中,然后把刚才剩下q1中的那个元素出队列。之 阅读全文

posted @ 2017-09-01 08:36 泡面小王子 阅读(309) 评论(0) 推荐(0)