自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 大数运算

//=============================================================================================================#include "Big__CALC.h"int main(){ char str1[200]="9876543210987"; char str

2012-11-27 13:59:50 397

翻译 12222

#include #include #include #define YES 1#define NO 0#define NUM 26struct trie{ trie * next[NUM]; int isword;};trie head,*t,*s;int Max;char str1[100];int exist(trie &head,char x[]){

2012-11-23 07:44:57 480

原创 111

#include #include #include #define YES 1#define NO 0#define NUM 26struct trie{   trie * next[NUM];   int isword;};trie head,*t,*s;int Max;char str1[100];int exist(trie &hea

2012-11-23 07:43:28 403

转载 字典

经典的字典树题目。。字典树:又称单词查找树,Trie树,是一种树形结构,是一种哈希树的变种。典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:利用字符串的公共前缀来节约存储空间,最大限度地减少无谓的字符串比较,查询效率比哈希表高。  #include #include #include #include

2012-11-23 01:24:46 380

转载 linux学习笔记

<br />一篇非常好的linux学习笔记分享  (Linux入门绝佳)<br />linux目录架构<br />/   根目录<br />/bin    常用的命令 binary file 的目錄<br />/boot   存放系统启动时必须读取的档案,包括核心 (kernel) 在内<br />     /boot/grub/menu.lst   GRUB设置<br />     /boot/vmlinuz   内核<br />     /boot/initrd     核心解壓縮所需 RAM Disk

2011-05-23 20:26:00 459

原创 运用递归算法的例子

1/编写一个递归函数test判断字符串是否为回文,如是返回true,如不是返回false。函数应忽略空字符。<br />bool test(char *s,int from,int to)<br />{<br />         if(to<=from)<br />                      return ture;<br />         else<br />         {<br />              if(s[from++]!=s[to--])<br />     

2011-03-28 20:43:00 947

原创 递归算法详解

C通过运行时堆栈支持递归函数的实现。递归函数就是直接或间接调用自身的函数。     许多教科书都把计算机阶乘和菲波那契数列用来说明递归,非常不幸我们可爱的著名的老潭老师的《C语言程序设计》一书中就是从阶乘的计算开始的函数递归。导致读过这本经书的同学们,看到阶乘计算第一个想法就是递归。但是在阶乘的计算里,递归并没有提供任何优越之处。在菲波那契数列中,它的效率更是低的非常恐怖。     这里有一个简单的程序,可用于说明递归。程序的目的是把一个整数从二进制形式转换为可打印的字符形式。例如:

2011-03-28 13:42:00 787

原创 字符串反转的几种算法

编写反转字符串的程序,要求优化速度、优化空间(1)第一次看到这个题目首先想到遍历这个字符串,把第一个和最后一个字符交换,第二个和倒数第二个交换,依次循环即可,下面时代码char* strrev1(const char* str){ int len = strlen(str); char* tmp = new char[len + 1]; strcpy(tmp,str); for (int i = 0; i (2)用数组下标的方式访问数组,实

2011-03-28 11:00:00 895

原创 c/c++ 面试常考算法

二分查找算法int bfind(int *a,int len,int val){ int m=len/2; int l=0; int r=len; while(l!=m&&r!=m) { if(a[m]>val) { r=m; m=(l+m)/2; } if(a[m]2.在母串中查找子串出现到次数int fi

2011-03-25 10:28:00 1979

转载 C++虚函数表解析(转)

C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTTI技术,虚函数技术,要么是试图做到在编译时决议,要么试图做到运行时决议。 关于虚函数的使用方法,我在这里不做过多的阐述。大家可以看看相关的C++的书籍。在这篇文章中,我只想从虚函数的实现机制上面为大家 一个清晰的剖析。

2011-02-23 10:34:00 512

原创 疯狂的数组名与 大小端存储

<br />先来看一段代码<br />#include <stdio.h>int main(void){ int a[5] = {1, 2, 3, 4, 5}; int *ptr1 = (int*)(&a + 1); int *ptr2 = (int*)((int)a + 1); printf("%x %x/n", ptr1[-1], *ptr2); return 0;}<br />有兴趣的朋友可以来猜测下 输出的值会是多少 =.=~<

2011-01-15 21:29:00 696

原创 typedef和#define的区别

一、typedef的用法 <br />1、在C/C++语言中,typedef常用来定义一个标识符及关键字的别名,它是语言编译过程的一部分,但它并不实际分配内存空间,实例像: <br />typedef    int       INT; <br />typedef    char*  Pchar; <br />typedef   (int*)   pINT; <br />typedef    unsigned char uchar;     // 将频繁使用且较长的类型定义一个别名<br />2、typed

2011-01-15 16:14:00 801

原创 定义一个数组,编程打印它的全排列

   #define N 3   int a[N] = { 1, 2, 3 };   则打印出   1 2 3      1 3 2      2 1 3      2 3 1      3 2 1     3 1 2     1 2 3   程序的主要思路是:把第1个数换到最前面来(本来就在最前面),准备打印1xx,再对后两个数2和3做全排列。把第2个数换到最前面来,准备打印2xx,再对后两个数1和3做全排列。把第3个数换到最前面来,准备打印3xx,再对后两个数1

2011-01-09 16:45:00 4176

原创 原码,补码,反码

原码、反码、补码2008年03月02日 星期日 18:40原码:<br />将最高位作为符号位(以0代表正,1代表负),其余各位代表数值本身的绝对值(以二进制表示)。<br />为了简单起见,我们用1个字节来表示一个整数。<br />     +7的原码为: 00000111<br />     -7的原码为: 10000111<br />问题:<br />     +0的原码为:00000000<br />    

2010-12-29 14:42:00 783

原创 Linux -C 的read 和 write函数

读函数read  ssize_t read(int fd,void *buf,size_t nbyte)  read函数是负责从fd中读取内容.成功时,read返回实际所读的字节数,如果返回的值是0,表示已经读到文件的结束了. 小于0表示出现了错误.如果错误为EINTR说明读是由中断引起的, 如果是ECONNREST表示网络连接出了问题. 写函数write  ssize_t write(int fd,const void *buf,size_t nbytes) write

2010-11-25 19:23:00 14074

原创 Ubuntu 硬盘“分区”图文教程

Ubuntu 硬盘”分区“图文教程(用于光盘,U盘安装Ubuntu)<br />关于Linux系统下的“分区”问题,对于新手来说一直是很头疼的。我来简单写一下,它的“分区”方法,规则。 <br /><br />郑重声明: <br />1.我为了让没有接触过Linux系统的人,理解更加简单。所以在言语表述上不是很规范,专业。我只需要新手们能够明白基础知识,以后想提高,延伸。大家可以去Linux专门的论坛,看帖子学习。这个帖子,只给新手们起到“入门”的作用 <br />2.本教程虽然标题

2010-11-25 17:00:00 1147

原创 指针作为函数参数问题

这几天在学习C过程中,在使用指针作为函数参数传递的时候出现了问题,根本不知道从何得解:源代码如下:    createNode(BinNode *tree,char *p)    {        tree = (BinNode *) malloc(sizeof(BinNode));        tree->data = *p;    }该代码段的意图是通过一个函数创建一个二叉树的节点,然而在,调用该函数后,试图访问该节点结构体的成员时候,却发生了内存访问错误,到底问题出在哪儿

2010-11-17 14:02:00 789

原创 程序中内存分配原理分析

一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表. 3、全局区(静态区)(static)—,全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域, 未初始化的全局变量和未初始化的静态变量在相

2010-11-07 14:13:00 581

转载 main() 函数的有参形式

初学C时看到的 main() 是无参函数,但是外界有时候要向 main 传递一些参数,这时候就要用到 main(int argc,char *argv[]) 这样的有参形式argc int类型,记录命令和参数的总个数,同时决定了 argv 指针数组的大小argv 是一个指针数组实例化的解释一下:假设你编译获得的可执行程序叫 test那么无参数的命令 $./test传到main 里的 argc = 1 argv[0]="test" 如果你的命令是带参数的呢, 如:

2010-11-06 20:52:00 571

转载 微软strcpy,strcat和strcmp、memcpy的实现源代码

/****char *strcpy(dst, src) - copy one string over another**Purpose:* Copies the string src into the spot specified by* dest; assumes enough room.**Entry:* char * dst - string over which "src" is to be copied* const char * src - string to be copied over "d

2010-11-05 16:07:00 834

转载 类型转换

类型转换分为两种,一种是隐式类型转换,一种是显式类型转换。这里举一个例子:int a=8.0/3;.8.0是double类型(C规定,程序中出现的任何无后缀小数都为double类型,而出现的任何无后缀整数都为int型,在写程序时一定要记住),而3是int型。除法运算可否在两种不同类型的变量之间进行呢?显然是不行的。因此,这里就需要转换。我们知道,double型可表示的范围远远大于int型。而C和C++在这类转换中的原则就是,范围小的类型向范围大的类型转

2010-11-03 21:50:00 630

转载 题目:编写一个程序,测试运行它的平台是大端字节序还是小端字节序。

<br />大端字序节和小端自序节就是我们所说的大端模式和小端模式<br />小端字节序就是低地址存储数的低位字节。大端字节序正好相反。<br />举个例子。加入有 int a = 0x01000002;<br />假设变量a在内存的地址为:0x00000001;//这只是为了理解,真实的程序中,是不会存储到这的。<br />a占4个字节。它是int类型。<br />也就是0x00000001 0x00000002 0x00000003 0x00000004这4个内存地址。<br />小端字节序会这

2010-11-03 21:10:00 1626

空空如也

空空如也

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

TA关注的人

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