自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

byf_study_alway的专栏

不忘初心,方得始终!

  • 博客(29)
  • 资源 (18)
  • 收藏
  • 关注

原创 KMP算法

#include using namespace std;void GetNext(char* p,int next[]) { int pLen = strlen(p); next[0] = -1; int k = -1; int j = 0; while (j < pLen - 1) { //

2014-08-31 15:00:17 669

原创 linux 最长用命令集锦

date 使用场景,shell 编程中给文件命名使用date 为变量赋值其他 read -p "tishi_content" var_name输入提示echo -e  "the content of needed" 进行 \ 转义

2014-08-30 16:12:52 1220

转载 STL set之求交并差

#include #include #include #include using namespace std;struct compare{ bool operator ()(string s1,string s2) { return s1>s2; }///自定义一个仿函数};int main(){typedef std::set _SET;_SET s;s.in

2014-08-27 08:40:55 879

转载 fork函数简介

包括: fork函数简介fork函数的两次返回和父子进程的执行顺序简介fork()子进程与父进程之间的文件描述符问题  [cpp] view plaincopyprint? 1  1 #include                                                                                  

2014-08-12 12:25:42 953

原创 平衡二叉树转化为双向链表

很容易想到递归,实现确实不是太容易,对本人来说。平衡二叉树是有序的,要求链表也是有序。\代码:#include //平衡二叉树转化为双向链表using namespace std;typedef struct tree{ int data; struct tree *lchild; struct tree *rchild;}Tree,*pTree;void

2014-08-12 12:10:19 1888

原创 两种方法求单链表逆序

1 递归,很简单代码:#include using namespace std; typedef struct node{ int data; struct node * pNext;}Node ,*pNode;void createNode(pNode & pHead){ int temp; scanf("%d",&temp); pNode p,q; boo

2014-08-08 19:37:23 1037

原创 重写String类

主要是4个默认函数的重写:代码:#include using namespace std;class Cstring{private : char * data;public : Cstring(const char * str =NULL); Cstring(const Cstring &another); ~Cstring(); Cstring & ope

2014-08-08 17:18:24 1359 1

原创 sizeof 和类继承 虚继承 求类大小

代码:#include using namespace std;/*class a{ float k; // 4字节 virtual void foo(){} //有一个4字节的指针指向自己的虚函数表};class b : virtual public a{ virtual void f(){}}; 有这样的一个指针vptr_b_a,这个指针叫虚类指针,也是四个字节

2014-08-07 19:26:33 2068 4

原创 不能被继承的类

方法一:通过私有化构造函数代码:#include using namespace std;//只能在堆上进行创建class sealedClass{private : sealedClass(){} ~sealedClass(){}public: static sealedClass * getInstance(){ return new sealedClass(

2014-08-07 18:09:59 1007

原创 不用加减乘除做加法

很容易想到为二进制的与或非。加法分为三步:1 各位相加不进位 0 + 0 =0, 0+1 = 1,1+0=1,1+1=1,很明显是异或运算2 进位 1+1 =10进位,其余均不进位 ,进行左移动一位3 一直循环代码:#include using namespace std;int sum(int data1,int data2){ int sum,carry;

2014-08-07 17:23:20 1014

原创 求1+2+3+。。。+N

1 通过构造函数代码:

2014-08-07 15:48:38 1057

原创 模板元的简单学习

特别值得注意的是,因为C++的模板语言是在编译器编译的时候完成的,所以又称为静态语言,通常的C++语言又称为动态语言或者运行时语言。正是因为模板语言是在编译期完成的,所以我们可以借助于这种编译期的计算实现代码自动生成的目的,从而实现C++自动化编程。编译期宏typedef影射static类型变量和函数const 类型变量=,:?,-运算符enum运行期对象使用函数调用变量赋值操作变量时&,

2014-08-07 09:45:15 1149

原创 二叉树的后续遍历序列

代码:#include #include #include using namespace std;bool verifyBst(int data[],int length){ if(data == NULL || length <=0) return true; int root = data[length - 1]; int i=0; //查找左子树节点和长度

2014-08-06 15:33:28 1218 1

原创 二叉树和为某值

很容易想到用先序遍历,并传递进去一个数组和当前和。just so so代码:#include #include #include using namespace std;typedef struct tree{ int data; struct tree * lchild; struct tree * rchild;}Tree,*pTree;void create

2014-08-06 11:12:55 814

原创 栈的压入弹出序列

输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。代码:#include #include #include using namespace std;bool isStackSeq(int *pPush,int *pPop,int length){ bool isstack = false; if(pPush

2014-08-06 10:03:27 874

原创 包含最小元素的栈

题目:设计包含min函数的栈。定义栈的数据结构,要求添加一个min函数,能够得到栈的最小元素。要求函数min、push以及pop的时间复杂度都是O(1)。文件分布:头文件和main文件头文件:代码#include #include using namespace std;template class stackWithMin{ private :

2014-08-05 21:31:34 859

原创 旋转数组的最小数字

题目:把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个递增的排序的数组的一个旋转,输出旋转数组的最小元素。例如输入{1,2,3,4,5}的一个旋转为{3,4,5,1,2},该数组的最小值为1。可以使用从头到尾遍历,时间复杂度为O(n),根据其特性可以使用二分查找,降低时间复杂度。代码:#include using namespace std;i

2014-08-05 20:04:42 761

原创 重建二叉树

对于一颗二叉树,可以根据先序遍历(后序遍历)和中序遍历重新还原出二叉树。主要通过递归实现。关键是找出对应左右子树的长度,之后传递先序遍历的开始节点、结束节点,中序遍历的开始节点、结束节点。代码:#include using namespace std;typedef struct tree{ int data; struct tree *lchild; struct

2014-08-05 17:16:00 731

原创 两种方法求丑数

我们把只包含因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含因子7。方法1 :暴力破解,逐个判断代码:#include #include using namespace std;//判断是否是丑数bool isUgly(int index){ while(index % 2 == 0){ index /= 2

2014-08-04 21:06:56 2213

原创 使用红黑树查找最小n个数,适合处理大数据

使用STL容器 multiset代码:#include #include #include using namespace std;typedef multiset > intSet;typedef multiset >::iterator intIter;void findMaxNum(const vector &data,int k){ intSet Max;

2014-08-04 13:55:09 1955

原创 求链表倒数第几个节点

使用两个指针,和判断一个链表是否形成环类似代码:#include #include using namespace std;typedef struct node { int data; struct node *next ;}Node,*pNode;void creatNode( pNode &pHead ){ bool isFirst=true; pNode p

2014-08-04 05:53:55 1119

原创 二叉树的映象

很自然想起来递归:代码:#include #include using namespace std;typedef struct tree1{ int data; struct tree1 * lchild; struct tree1 * rchild;}Tree,* pTree;void createTree(pTree & p){ int temp ; scan

2014-08-03 21:35:38 792

原创 三种方法求解约瑟夫环问题

约瑟夫环是一个数学的应用问题:已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人全部出列。方法1:使用stl::list模拟环形链表,参考剑指offer代码:#include #include using namespace std;i

2014-08-03 19:35:23 1982

原创 求商求模运算

这两种运算总是感觉有点迷糊,现在 拨开乌云见天日。对于整型数a,b来说,取模运算或者求余运算的方法都是:1.求 整数商: c = a/b;2.计算模或者余数: r = a - c*b.#include using namespace std;void div(){ printf("5/3: %d",5/3);cout << endl; printf("

2014-08-03 17:40:59 2473

转载 1000桶酒中寻找一桶毒酒算法

有1000桶酒,其中1桶有毒。而一旦吃了,毒性会在1周后发作。现在我们用小老鼠做实验,要在1周后找出那桶毒酒,问最少需要多少老鼠,如何检测(老鼠的使用量越少越好,注意,毒性1周后才会发作,而且一周后必须出结果,所以时间紧迫) 思路: 为何需要老鼠做实验,显然是根据老鼠的死活来判断酒的毒性,每一只老鼠只有2种状态,死和活,n只老鼠就是这n个死或活的状态,应该由此敏感的联想到二进制,隐

2014-08-02 16:12:21 1963

原创 统计二叉树每层节点个数并打印每层节点

先看百度一道面试题:有一颗二叉树,定义树的高度为从根到叶子节点的最长距离,树的宽度为每层节点的最大值,树的面积定义为高度和宽度的乘积。写一个函数计算一个二叉树的面积。(15分)解决这道题参考资料剑指offer和编程之美,分别求求二叉树高度和宽度。都是采用递归:求高度参考:http://blog.csdn.net/buyingfei8888/article/details

2014-08-02 10:36:43 5494

原创 打印二叉树的深度

这道题本质上还是考查二元树的遍历如果一棵树只有一个结点,它的深度为1。如果根结点只有左子树而没有右子树,那么树的深度应该是其左子树的深度加1;同样如果根结点只有右子树而没有左子树,那么树的深度应该是其右子树的深度加1。如果既有右子树又有左子树呢?那该树的深度就是其左、右子树深度的较大值再加1。上面的这个思路用递归的方法很容易实现,只需要对遍历的代码稍作修改即可参考资料:

2014-08-02 09:51:00 1584

原创 归并排序

归并(Merge)排序法是将两个(或两个以上)有序表合并成一个新的有序表,即把待排序序列分为若干个有序的子序列,再把有序的子序列合并为整体有序序列。例如有两个有序表:(7,10,13,15)和(4,8,19,20),归并后得到的有序表为:(4,7,8,10,13,15,19,20)。代码:#include using namespace std;void mergearra

2014-08-01 14:54:17 1080

原创 二分查找

二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。假设其数组长度为n,其算法复杂度为o(log(n))代码:#include using namespace std;bool BinarySearch(int data[],int start, int end, int number){ while(start

2014-08-01 09:09:42 1814 5

腾讯最近几年技术类笔试题

腾讯最近几年技术类笔试题

2014-07-09

腾讯最近几年关于技术类的招聘题

腾讯最近几年关于技术类的招聘题

2014-07-09

有关人工智能的多篇高水平论文

有关人工智能的多篇高水平论文

2013-12-20

网页显示swf文档

网页显示swf文档

2013-08-09

蓝桥杯试题历年

蓝桥杯试题历年初赛 决赛试题 C++ java都有

2013-05-21

无向图 有向图 有向网 无向网 深度优先遍历 C语言

无向图 有向图 有向网 无向网 深度优先遍历 C语言  用户操纵界面

2013-05-21

php参考手册 汉化版 最新版

php参考手册 汉化版 最新版 web开发

2013-05-12

html5 参考手册 最新版

html5 参考手册 最新版 web开发

2013-05-12

think PHP 参考手册 最新版

think PHP 参考手册 最新版

2013-05-12

C#图书管理系统

和同学一起做的图书管理系统,功能完善,10分,不多,希望有帮助

2012-10-18

smarty做的留言榜

可以实现留言板的大部分信息,功能比较完善,html css样式完全分开

2012-10-18

C#做的QQ聊天工具

这个项目是和同学一起开发,实现局域网内通信,通过学校考核,10分,不多,希望对你们有帮助

2012-10-18

C#做的画板

可以实现win 上面所有功能,除了选择特定一部分进行移动,花费10天时间,希望下面有人继续完善

2012-10-18

C#做的贪吃蛇

C#做的贪吃蛇,包含背景音乐,速度调整,等级调整,花费10天时间,分数不算高吧

2012-10-18

C 语言经典试题

很值得学习的经典C试题

2012-10-18

C#贪吃蛇初学很有用

对初学者很有帮助,希望能帮住。

2012-02-28

c#写的贪吃蛇代码

对刚接触C#并想做出自己游戏的小帮祝

2012-02-25

空空如也

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

TA关注的人

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