自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(102)
  • 资源 (11)
  • 收藏
  • 关注

原创 组合非递归解法

#include #include #include using namespace std;/*********************组合非递归解法**********************/void Combin_NR(char c[]){ int len=strlen(c); char bt=1; while(bt!=pow(2,len))

2012-10-09 21:53:43 141

原创 四道有趣的单链表面试题

#include #include #include #include #include #include using namespace std;/****************************************** 四道有趣的单链表面试题*******************************************/typedef

2012-09-30 17:40:44 440

原创 把一个字符串的大写字母放到字符串的后面

#include #include using namespace std;/******************************************把一个字符串的大写字母放到字符串的后面,各个字符的相对位置不变,不能申请额外的空间*******************************************/char *func(char *string)

2012-09-30 16:04:30 304

原创 字符串匹配

#include #include /****************************** 字符串匹配*******************************//**穷举法与自动机**/void BF1(char *originstring,char *substring)//复杂度我O(nm){ size_t i=0,j=0;

2012-09-29 21:47:53 238 1

原创 华为机试-字符串字串替换为新串

#include #include /***********************字符串字串替换为新串例如:原串:abcdabef 字串:ab 新串:w 输出为:wcdwefps:新串的长度要小于字串************************///一般方法,穷举法,复杂度为O(nm)char *ReplaceSubString(char

2012-09-29 16:33:49 1470

原创 int和unsigned int的求和问题

#include int main(){ int a=-6; unsigned int b=4; printf("a: %x\n",a); printf("a: %x\n",b); int sum=a+b; printf("sum: %x\n",sum); printf("sum: %d\n",sum); printf("%u\n

2012-09-29 11:47:55 178

原创 NVIDIA笔试-不用减号实现减法

#include using namespace std;/*****************不用减号实现减法******************/#define MINUS(a,b) ((a)+~(b)+1)int main(){ cout<<MINUS(100,6)<<endl; return 0;}

2012-09-29 11:24:27 265

原创 百度笔试-字符串左移

#include #include using namespace std;/**********************************************************************字符串左移,void *pszStringRotate(char *pszString, int nCharsRotate)比如:ABCDEFG,移3位变DEFGABC,

2012-09-28 22:00:42 261

原创 IBM面试-栈和队列的相互转换

#include #include #include using namespace std;/***************************************IBM面试题:栈和队列的相互转换****************************************///两个栈模拟一个队列class stack_simulate_queue{privat

2012-09-28 16:59:01 137

原创 IBM笔试-一个数的组合

#include #include /***************************************给出一个数N,写出其组合例如:N=3,输出{1},{2},{3},{1,2},{1,3}{2,3},{1,2,3}****************************************///待改进#define N 3void compound(int a

2012-09-28 11:15:53 149

原创 IBM笔试-二进制中最高位1的位置

#include #include /***************************************unsigned int类型的数二进制中最高位1的位置例如:0000 0000 0000 0001中返回0 0000 0000 1111 0000中返回7而不是4****************************************/int Fi

2012-09-27 20:31:56 673 1

原创 IBM笔试-出现一次的第一个字符

#include #include /************************************找到字符串中只出现一次的第一个字符例如:"aabcdecdeff",输出b*************************************/char FindFirstChar_hash(char *str){ int hash[128]; fo

2012-09-27 20:20:53 216 1

原创 计算机通信协议

物理层:以太网 · 调制解调器 · 电力线通信(PLC) · SONET/SDH · G.709 · 光导纤维 · 同轴电缆 · 双绞线等数据链路层:Wi-Fi(IEEE 802.11) · WiMAX(IEEE 802.16) · ARP · RARP ·ATM · DTM · 令牌环 · 以太网 ·FDDI · 帧中继 · GPRS · EVDO ·HS

2012-09-25 17:42:05 238

原创 两个单向链表第一个公共节点

#include #include using namespace std;/**************************两个单向链表第一个公共节点***************************/typedef struct ListNode{ int data; struct ListNode *next;} ListNode;//创建两个

2012-09-24 10:45:35 165

原创 中兴-数字字符串转数字(待改进)

#include #include using namespace std;int string2Int(string pStr){ int len=pStr.length(); if(len==0) return 0; int sum=0; int i=0; while(i<len) sum=sum*10+(pSt

2012-09-21 21:24:46 134

原创 中兴-固定内存块分配

#include #include using namespace std;//用栈实现简单固定大小内存块管理//内存块的定义和初始化的代码已完成//请实现申请函数和释放函数,每次申请或释放一块内存#define BYTE unsigned char#define UB_NUM 80#define UB_SIZE 20BYTE g_UserBlock[UB_NUM][UB_SI

2012-09-21 21:15:41 228

原创 创新工场-一道题引发的思考

先看题:#include int main(){ int a=100,b=150,c=200; int const *p=&b; const int *t=&b;// int *pa=&a;// int *pc=&c; printf("%d,%d",*(++p),*(--t)); return 0;}结果为:100,20

2012-09-21 14:49:20 152

原创 创新工场-100个人按灯问题

#include using namespace std;//创新工场 100盏灯,100个人,分别编号:1,2,3,4.....//起始灯是灭的,第一个人按1,2,3,4...按灯,第二个2,4,6,8...//第n个按n,2n,3n,4n....//问:最后还剩几盏灯?void func(int aa[],int n){ for(int i=1; i<=n; i++)

2012-09-21 11:40:41 196

原创 创新工场-字符串排列(按字典序)

#include #include #include using namespace std;//创新工场 字符串全排列(按字典序输出)//例如{a,b} 输出:aa,ab,ba,bb//字符串排列(从小到大)int compare(const void *a,const void *b){ return (*(char*)a-*(char*)b);}void st

2012-09-21 10:32:27 198

原创 链表相邻元素翻转

#include #include #include #include //#include using namespace std;//链表节点typedef struct ListNode{ char data; ListNode *next;} ListNode;/*创建链表*/ListNode* CreatList(ListNode *head,

2012-09-15 11:54:05 150

原创 求数组最大子序列和

#include #include using namespace std;/*求数组最大子序列和*/bool GreatestSumOfSubArray(int *array,unsigned int length,int &result, unsigned int *begin,unsigned int *end){

2012-09-15 11:02:54 278

原创 比较两颗二叉树是否相等

#include #include #include #include using namespace std;typedef struct TreeNode{ char c; TreeNode *leftchild; TreeNode *rightchild;} TreeNode;bool CompTree(TreeNode *tree1,TreeN

2012-09-14 19:00:02 404

转载 每个程序员都应该知道的8个Linux命令

每个程序员,在职业生涯的某个时刻,总会发现自己需要知道一些Linux方面的知识。我并不是说你应该成为一个Linux专家,我的意思是,当面对linux命令行任务时,你应该能很熟练的完成。事实上,学会了下面8个命令,我基本上能完成任何需要完成的任务。注意:下面的每个命令都有十分丰富的文档说明。这篇文章并不是来详尽的展示每个命令的各种功用的。我在这里要讲的是这几个最常用的命令的最常见用法。如果你

2012-09-14 14:18:44 162

转载 关于STL~map的一点事

Map是STL的一个关联容器,它提供一对一(其中第一个可以称为关键字,每个关键字只能在map中出现一次,第二个可能称为该关键字的值)的数据处理能力,由于这个特性,它完成有可能在我们处理一对一数据的时候,在编程上提供快速通道。这里说下map内部数据的组织,map内部自建一颗红黑树(一种非严格意义上的平衡二叉树),这颗树具有对数据自动排序的功能,所以在map内部所有的数据都是有序的,后边我们会见识到有

2012-09-14 11:30:39 377

原创 字符串拼接函数的实现strcat()

#include #include #include using namespace std;//字符串拼接函数strcat() 指针char* my_strcat1(char *dest,const char *src){ char *temp=dest; while(*dest) dest++; while(*dest++=*src++)

2012-09-13 17:13:43 264

原创 二叉树的各种操作

#include #include #include #include #include #include using namespace std;//二叉树节点描述struct TreeNode{ char data; TreeNode *LeftChild,*RightChild;};//创建一颗二叉树void CreatTree(TreeNode

2012-09-13 15:03:51 179

原创 字符串循环移位操作

#include #include #include using namespace std;/*memcpy和strcpy方法 */void func1(char *Input_str,int len,int m){ char *Output_str=new char[len+1]; memcpy(Output_str,Input_str+m,len-m);

2012-09-12 17:42:32 120

转载 C++中虚函数工作原理和(虚)继承类的内存占用大小计算

一、虚函数的工作原理      虚函数的实现要求对象携带额外的信息,这些信息用于在运行时确定该对象应该调用哪一个虚函数。典型情况下,这一信息具有一种被称为 vptr(virtual table pointer,虚函数表指针)的指针的形式。vptr 指向一个被称为 vtbl(virtual table,虚函数表)的函数指针数组,每一个包含虚函数的类都关联到 vtbl。当一个对象调用了虚函数,实际

2012-09-12 11:18:28 338

转载 C/C++ union用法

http://blog.chinaunix.net/u2/84450/showart_1829958.html 在C/C++程序的编写中,当多个基本数据类型或复合数据结构要占用同一片内存时,我们要使用联合体;当多种类型,多个对象,多个事物只取其一时(我们姑且通俗地称其为“n 选1”),我们也可以使用联合体来发挥其长处。首先看一段代码:union myun {st

2012-09-11 21:07:09 389

原创 组合和全排列递归和非递归实现

#include #include #include using namespace std;/*非递归方法,字典序法*/void Swap(char *a,char *b){ char temp=*a; *a=*b; *b=temp;}bool IsSwap(char *str,int start,int end){ for(int i=s

2012-09-11 16:07:22 410

转载 进程通信方式

进程通信方式:转载地址:http://blog.chinaunix.net/u3/94667/showart_2263949.html进程间通信就是在不同进程之间传播或交换信息,那么不同进程之间存在着什么双方都可以访问的介质呢?进程的用户空间是互相独立的,一般而言是不能互相访问的,唯一的例外是共享内存区。但是,系统空间却是“公共场所”,所以内核显然可以提供这样的条件。除此以外,

2012-09-10 11:15:32 441

转载 12个有趣的C语言面试题

1.gets()函数问:请找出下面代码里的问题:#include int main(void) {     char buff[10];     memset(buff,0,sizeof(buff));      gets(buff);      printf("\n The buffer entered is [%s]\n",buff);      return 0; } 答

2012-09-08 17:11:19 165

原创 字符串转换成相应的数字

已知:yi er san si wu liu qi ba jiu 分别对应123456789,对一段只含有这几种字符的字符串进行转换,转换成相应的数字.#include #include using namespace std;/*已知:yi er san si wu liu qi ba jiu 分别对应123456789对一段只含有这几种字符的字符串进行转换,转换成相应的数字*

2012-09-08 14:54:57 240

原创 一个文件排序到另一文件

#include #include #include #include using namespace std;//Bubble sorttemplate void Swap(T &num1,T &num2){ T temp; temp=num1; num1=num2; num2=temp;}template void BubbleSort(

2012-09-07 15:27:31 178

转载 C++学习重点分析

C++是一种语言,仅仅是它的语法、特性、标准类库就已经是一门非常高深的课程,所以在开始学习的时候,必须先要打好基础。要知道当我们在学习它的时候重点应该注意什么。一、#include “filename.h”和#include 的区别#include “filename.h”是指编译器将从当前工作目录上开始查找此文件#include 是指编译器将从标准库目录中开始查找此文件

2012-09-06 10:48:14 145

转载 全排列生成算法(一)

对于给定的集合A{a1,a2,...,an},其中的n个元素互不相同,如何输出这n个元素的所有排列(全排列)。递归算法这里以A{a,b,c}为例,来说明全排列的生成方法,对于这个集合,其包含3个元素,所有的排列情况有3!=6种,对于每一种排列,其第一个元素有3种选择a,b,c,对于第一个元素为a的排列,其第二个元素有2种选择b,c;第一个元素为b的排列,第二个元素也有2种选择a,c,…

2012-08-18 16:33:12 357

转载 VC++,掀起你的盖头来——谈VC++对象模型

一个C++程序员,想要进一步提升技术水平的话,应该多了解一些语言的语意细节。对于使用VC++的程序员来说,还应该了解一些VC++对于C++的诠释。Inside the C++ Object Model虽然是一本好书,然而,书的篇幅多一些,又和具体的VC++关系小一些。因此,从篇幅和内容来看,译者认为本文是深入理解C++对象模型比较好的一个出发点。  这篇文章以前看到时就觉得很好,旧文重读,

2012-08-17 21:55:00 383

转载 对KMP算法的理解

KMP算法是一种高效的模式匹配算法,复杂度可以达到O(m+n),而普通模式匹配算法的复杂度为O(m*n)。普通模式匹配算法  从主串的第一个字符(或者给定的第pos个字符)开始和子串的第一个字符开始比较,若相等,则继续比较后面的字符。若不相等,则从主串本次开始比较的字符的下一个字符开始,与子串的第一个字符进行比较(即主串需要回退到本次比较开始字符的下一字符,模式串回退到首字符,主串

2012-08-17 21:34:08 120

转载 如何判断单链表里面是否有环【转载】

这题目还是慢有意思的。题目:0.如何判断单链表里面是否有环?算法的思想是设定两个指针p, q,其中p每次向前移动一步,q每次向前移动两步。那么如果单链表存在环,则p和q相遇;否则q将首先遇到null。这里主要理解一个问题,就是为什么当单链表存在环时,p和q一定会相遇呢?假定单链表的长度为n,并且该单链表是环状的,那么第i次迭代时,p指向元素i mod n,q指向2i

2012-08-17 21:29:55 172

转载 递归求全排列算法 8种算法 调试通过

数据结构课老师提出用递归方法求排列,要求只有一个循环语句,迷糊中,遂驾驭百度,得一篇宝文,摘记于此原博客地址:http://course.zjnu.cn/quyt/bbs/ftbbs.asp?id=115 感谢作者详尽的描述。另外由于近期使用C#,目标是尽快将例子中的C++程序改成C#全排列的生成算法全排列的生成算法就是对于给定的字符集,用有效的方法将所有可能的全排列无重复无遗

2012-08-17 20:22:58 151

递归求全排列算法

递归求算排列算法;递归求算排列算法;递归求算排列算法;

2012-08-13

数据结构算法-Visual C++ 6.0程序集

数据结构算法-Visual C++ 6.0程序集

2012-07-29

数据结构算法与应用-C++_语言描述函数源代码

数据结构算法与应用-C++_语言描述函数源代码

2012-07-29

android的tabhost的一个例子

android tabhost activitygroup 源码 分享给有需要的朋友们

2012-04-24

DC中文教程

DC中文教程 分享给有需要的朋友

2012-04-21

Verilog HDL_0429405

Verilog HDL_0429405.pdf 分享给有需要的朋友

2012-04-21

Python 数据结构与算法

Python 数据结构与算法 分享给有需要的朋友

2012-04-12

Python 核心编程 第二版

Python 核心编程 第二版 分享给有需要的朋友

2012-04-12

PROTEUS中文教程

PROTEUS中文教程 分享给有需要的朋友

2012-04-12

Java网络socket编程详解

Java网络socket编程详解 分享给有需要的朋友

2012-04-12

网络端口详解.

网络端口详解. 上传网络端口详解,分享给有需要的人

2012-04-11

空空如也

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

TA关注的人

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