自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 删除字符串中连续的两个0

char* removeSuccessTwoZero(char *Array){ char *pCur; char *pCopy; int iZeroNum = 0; pCur = pCopy = Array; while(*pCur != '\0') { if (*pCur == '0') {

2012-09-26 00:12:20 1359

原创 按层输出二叉树

void printLevel(NODE *pHead){ std::list NodeList; //这里不能用vector NODE *pCur = pHead; if (!pHead) return; NodeList.push_back(pHead); std::list::iterator itr = NodeList.b

2012-09-25 23:29:31 2121

原创 把已排序的双向链表转变成平衡二叉树

#include "stdafx.h"#include "vector"#include "list"typedef struct node{ int val; struct node *pre; struct node *rear;}NODE;NODE *getMiddleNode(NODE *pStart, NODE *pEnd){ NOD

2012-09-25 23:20:34 1450

原创 把数组中负数放在左边零在中间正数放右边

void swap(int &A, int &B){ int tmp = A; A = B; B = tmp;}void rangeArray(int *Array, int len){ int low = 0; int hight = len-1; int zero = 0; //思想是进行两次快速排序 wh

2012-09-25 00:34:27 4331 1

原创 交换一个无符号整形数的奇偶位

void OddEventBitSwap1(unsigned &A){ unsigned int mask = 0x3; int loop = sizeof(unsigned)*8/2; for(int idx = 0; idx < loop; idx++) { if (((A & mask) != mask) && ((A & mask) !=

2012-09-24 21:14:32 633

原创 删除字符串中重复出现的字符

char * deleteDuplicatedChar(char *string){ if (strlen(string) <= 1) return string; char *pCurPos = &string[1]; char *pLastPos = &string[1]; while (*pCurPos != '\0') {

2012-09-08 11:37:36 933

原创 判断一棵树是否BST

bool checkBST(NODE *Head){ // 本题的解题思想主要用到后续遍历 pNode = Head; if (pNode == NULL) return true; if ((checkBST(pNode->left)) && (checkBST(pNode->right))) { bool leftO

2012-09-07 21:58:13 1131

原创 找出二叉树中序遍历的所求节点的下一个节点

typedef struct node{ int data; struct node* left; struct node* right; struct node* parent;}NODE;NODE *findSuccessorInorder(NODE* node){ NODE *pNode = node; if (pNode->ri

2012-09-07 21:32:38 2531

转载 如何将二维数组作为函数的参数传递

转自出处如何将二维数组作为函数的参数传递  今天写程序的时候要用到二维数组作参数传给一个函数,我发现将二维数组作参数进行传递还不是想象得那么简单里,但是最后我也解决了遇到的问题,所以这篇文章主要介绍如何处理二维数组当作参数传递的情况,希望大家不至于再在这上面浪费时间。正文:   首先,我引用了谭浩强先生编著的《C程序设计》上面的一节原文,它简要介绍了如何将二维数

2012-09-07 11:40:01 501

转载 抽象工厂的起源

转自出处抽象工厂的起源据说最早的应用是用来创建在不同操作系统的视窗环境下都能够运行的系统。比如在Windows与Unix系统下都有视窗环境的构件,在每一个操作系统中,都有一个视窗构件组成的构件家族。我们可以通过一个抽象角色给出功能描述,而由具体子类给出不同操作系统下的具体实现,如图: 可以发现上面产品类图有两个产品等级结构,分别是Button与Text;同时有两

2012-09-05 20:34:30 1147 1

转载 简单工厂模式和策略模式的区别

转自出处简单工厂模式和策略模式的理解 相同之处:1.它们都有一个抽象类或公共接口,并且在抽象类或者接口中,定义一个方法(或虚拟抽象方法);2.通过子类进行继承父类或者实现接口方法。3.使用多态特性,进行实例方法调用,调用的是子类的方法; 区别之处:1.简单工厂模式 强调的创建类对象,根据 字符串类型参数传入参数,进行实例化;2.简单工厂模

2012-09-05 19:59:18 1428

转载 设计模式之--桥接模式

转自出处      学习设计模式也有一段时间了,今天就把我整理的一篇课程和大家分享,有不妥之处欢迎指出. 生活中的一个例子:    就拿汽车在路上行驶的来说。即有小汽车又有公共汽车,它们都不但能在市区中的公路上行驶,也能在高速公路上行驶。这你会发现,对于交通工具(汽车)有不同的类型,然而它们所行驶的环境(路)也在变化,在软件系统中就要适应两个方面的变化?怎样实现才能应对

2012-09-05 19:53:15 880

原创 设计一个栈,出栈时弹出栈中最小的元素,时间复杂度为1

Given a few numbers, how will you push them into a stack such that whenever I pop the top most element from that stack, I get the minimum number from the bunch. Also he wanted me to tell the pop pus

2012-09-02 22:31:58 764

空空如也

空空如也

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

TA关注的人

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