<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[sunbingxi_的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/sunbingxi_</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; sunbingxi_]]></copyright><item><title><![CDATA[大数运算]]></title><link>https://blog.youkuaiyun.com/sunbingxi_/article/details/8229825</link><guid>https://blog.youkuaiyun.com/sunbingxi_/article/details/8229825</guid><author>sunbingxi_</author><pubDate>Tue, 27 Nov 2012 13:59:50 +0800</pubDate><description><![CDATA[//=============================================================================================================
#include "Big__CALC.h"

int main()
{
	char str1[200]="9876543210987";   
	char str]]></description><category></category></item><item><title><![CDATA[12222]]></title><link>https://blog.youkuaiyun.com/sunbingxi_/article/details/8214833</link><guid>https://blog.youkuaiyun.com/sunbingxi_/article/details/8214833</guid><author>sunbingxi_</author><pubDate>Fri, 23 Nov 2012 07:44:57 +0800</pubDate><description><![CDATA[#include 
#include 
#include 
#define YES 1
#define NO 0
#define NUM 26
struct trie
{
   trie * next[NUM];
   int isword;
};
trie head,*t,*s;
int Max;
char str1[100];
int exist(trie &head,char x[])
{]]></description><category></category></item><item><title><![CDATA[111]]></title><link>https://blog.youkuaiyun.com/sunbingxi_/article/details/8214832</link><guid>https://blog.youkuaiyun.com/sunbingxi_/article/details/8214832</guid><author>sunbingxi_</author><pubDate>Fri, 23 Nov 2012 07:43:28 +0800</pubDate><description><![CDATA[#include 
#include 
#include 
#define YES 1
#define NO 0
#define NUM 26
struct trie
{
   trie * next[NUM];
   int isword;
};
trie head,*t,*s;
int Max;
char str1[100];
int exist(trie &hea]]></description><category></category></item><item><title><![CDATA[字典]]></title><link>https://blog.youkuaiyun.com/sunbingxi_/article/details/8214767</link><guid>https://blog.youkuaiyun.com/sunbingxi_/article/details/8214767</guid><author>sunbingxi_</author><pubDate>Fri, 23 Nov 2012 01:24:46 +0800</pubDate><description><![CDATA[经典的字典树题目。。
字典树：又称单词查找树，Trie树，是一种树形结构，是一种哈希树的变种。典型应用是用于统计，排序和保存大量的字符串（但不仅限于字符串），所以经常被搜索引擎系统用于文本词频统计。它的优点是：利用字符串的公共前缀来节约存储空间，最大限度地减少无谓的字符串比较，查询效率比哈希表高。
 
 
#include 
#include 
#include 
#include]]></description><category></category></item><item><title><![CDATA[linux学习笔记]]></title><link>https://blog.youkuaiyun.com/sunbingxi_/article/details/6440711</link><guid>https://blog.youkuaiyun.com/sunbingxi_/article/details/6440711</guid><author>sunbingxi_</author><pubDate>Mon, 23 May 2011 20:26:00 +0800</pubDate><description><![CDATA[<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]]></description><category></category></item><item><title><![CDATA[运用递归算法的例子]]></title><link>https://blog.youkuaiyun.com/sunbingxi_/article/details/6284508</link><guid>https://blog.youkuaiyun.com/sunbingxi_/article/details/6284508</guid><author>sunbingxi_</author><pubDate>Mon, 28 Mar 2011 20:43:00 +0800</pubDate><description><![CDATA[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 />     ]]></description><category></category></item><item><title><![CDATA[递归算法详解]]></title><link>https://blog.youkuaiyun.com/sunbingxi_/article/details/6283358</link><guid>https://blog.youkuaiyun.com/sunbingxi_/article/details/6283358</guid><author>sunbingxi_</author><pubDate>Mon, 28 Mar 2011 13:42:00 +0800</pubDate><description><![CDATA[C通过运行时堆栈支持递归函数的实现。递归函数就是直接或间接调用自身的函数。
     
许多教科书都把计算机阶乘和菲波那契数列用来说明递归，非常不幸我们可爱的著名的老潭老师的《C语言程序设计》一书中就是从阶乘的计算开始的函数递归。导
致读过这本经书的同学们，看到阶乘计算第一个想法就是递归。但是在阶乘的计算里，递归并没有提供任何优越之处。在菲波那契数列中，它的效率更是低的非常恐
怖。

     这里有一个简单的程序，可用于说明递归。程序的目的是把一个整数从二进制形式转换为可打印的字符形式。例如：]]></description><category></category></item><item><title><![CDATA[字符串反转的几种算法]]></title><link>https://blog.youkuaiyun.com/sunbingxi_/article/details/6283001</link><guid>https://blog.youkuaiyun.com/sunbingxi_/article/details/6283001</guid><author>sunbingxi_</author><pubDate>Mon, 28 Mar 2011 11:00:00 +0800</pubDate><description><![CDATA[编写反转字符串的程序，要求优化速度、优化空间（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)用数组下标的方式访问数组，实]]></description><category></category></item><item><title><![CDATA[c/c++ 面试常考算法]]></title><link>https://blog.youkuaiyun.com/sunbingxi_/article/details/6276803</link><guid>https://blog.youkuaiyun.com/sunbingxi_/article/details/6276803</guid><author>sunbingxi_</author><pubDate>Fri, 25 Mar 2011 10:28:00 +0800</pubDate><description><![CDATA[二分查找算法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]]></description><category></category></item><item><title><![CDATA[C++虚函数表解析(转)]]></title><link>https://blog.youkuaiyun.com/sunbingxi_/article/details/6201753</link><guid>https://blog.youkuaiyun.com/sunbingxi_/article/details/6201753</guid><author>sunbingxi_</author><pubDate>Wed, 23 Feb 2011 10:34:00 +0800</pubDate><description><![CDATA[C++中的虚函数的作用主要是实现了多态的机制。关于多态，简而言之就是用父类型别的指针指向其子类的实例，然后通过父类的指针调用实际子类的成员
函数。这种技术可以让父类的指针有“多种形态”，这是一种泛型技术。所谓泛型技术，说白了就是试图使用不变的代码来实现可变的算法。比如：模板技
术，RTTI技术，虚函数技术，要么是试图做到在编译时决议，要么试图做到运行时决议。 关于虚函数的使用方法，我在这里不做过多的阐述。大家可以看看相关的C++的书籍。在这篇文章中，我只想从虚函数的实现机制上面为大家 一个清晰的剖析。 ]]></description><category></category></item><item><title><![CDATA[疯狂的数组名与 大小端存储]]></title><link>https://blog.youkuaiyun.com/sunbingxi_/article/details/6142970</link><guid>https://blog.youkuaiyun.com/sunbingxi_/article/details/6142970</guid><author>sunbingxi_</author><pubDate>Sat, 15 Jan 2011 21:29:00 +0800</pubDate><description><![CDATA[<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 />有兴趣的朋友可以来猜测下 输出的值会是多少 =.=~<]]></description><category></category></item><item><title><![CDATA[typedef和#define的区别]]></title><link>https://blog.youkuaiyun.com/sunbingxi_/article/details/6142342</link><guid>https://blog.youkuaiyun.com/sunbingxi_/article/details/6142342</guid><author>sunbingxi_</author><pubDate>Sat, 15 Jan 2011 16:14:00 +0800</pubDate><description><![CDATA[一、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]]></description><category></category></item><item><title><![CDATA[定义一个数组，编程打印它的全排列]]></title><link>https://blog.youkuaiyun.com/sunbingxi_/article/details/6125426</link><guid>https://blog.youkuaiyun.com/sunbingxi_/article/details/6125426</guid><author>sunbingxi_</author><pubDate>Sun, 09 Jan 2011 16:45:00 +0800</pubDate><description><![CDATA[    #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]]></description><category></category></item><item><title><![CDATA[原码，补码，反码]]></title><link>https://blog.youkuaiyun.com/sunbingxi_/article/details/6105002</link><guid>https://blog.youkuaiyun.com/sunbingxi_/article/details/6105002</guid><author>sunbingxi_</author><pubDate>Wed, 29 Dec 2010 14:42:00 +0800</pubDate><description><![CDATA[
原码、反码、补码2008年03月02日 星期日  18:40原码：<br />
将最高位作为符号位（以0代表正，1代表负），其余各位代表数值本身的绝对值（以二进制表示）。<br />
为了简单起见，我们用1个字节来表示一个整数。<br />
            +7的原码为： 00000111<br />
            -7的原码为： 10000111<br />
问题：<br />
            +0的原码为：00000000<br />
            ]]></description><category></category></item><item><title><![CDATA[Linux -C 的read 和 write函数]]></title><link>https://blog.youkuaiyun.com/sunbingxi_/article/details/6035709</link><guid>https://blog.youkuaiyun.com/sunbingxi_/article/details/6035709</guid><author>sunbingxi_</author><pubDate>Thu, 25 Nov 2010 19:23:00 +0800</pubDate><description><![CDATA[读函数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]]></description><category></category></item><item><title><![CDATA[Ubuntu 硬盘“分区”图文教程]]></title><link>https://blog.youkuaiyun.com/sunbingxi_/article/details/6035376</link><guid>https://blog.youkuaiyun.com/sunbingxi_/article/details/6035376</guid><author>sunbingxi_</author><pubDate>Thu, 25 Nov 2010 17:00:00 +0800</pubDate><description><![CDATA[Ubuntu 硬盘”分区“图文教程（用于光盘，U盘安装Ubuntu）<br />
关于Linux系统下的“分区”问题，对于新手来说一直是很头疼的。我来简单写一下，它的“分区”
方法，规则。 <br /><br />
郑重声明： <br />
1.我为了让没有接触过Linux系统的人，理解更加简单。所以在言语表述上不是很规范，专业。我只需要新手们能够明白基础知识，以后想提高，延伸。大家
可以去Linux专门的论坛，看帖子学习。这个帖子，只给新手们起到“入门”的作用 <br />
2.本教程虽然标题]]></description><category></category></item><item><title><![CDATA[指针作为函数参数问题]]></title><link>https://blog.youkuaiyun.com/sunbingxi_/article/details/6014711</link><guid>https://blog.youkuaiyun.com/sunbingxi_/article/details/6014711</guid><author>sunbingxi_</author><pubDate>Wed, 17 Nov 2010 14:02:00 +0800</pubDate><description><![CDATA[这几天在学习C过程中，在使用指针作为函数参数传递的时候出现了问题，根本不知道从何得解:源代码如下:
    createNode(BinNode *tree,char *p)
    {
        tree = (BinNode *) malloc(sizeof(BinNode));
        tree->data = *p;
    }
该代码段的意图是通过一个函数创建一个二叉树的节点，然而在，调用该函数后，试图访问该节点结构体的成员时候，却发生了内存访问错误，到底问题出在哪儿
]]></description><category></category></item><item><title><![CDATA[程序中内存分配原理分析]]></title><link>https://blog.youkuaiyun.com/sunbingxi_/article/details/5993198</link><guid>https://blog.youkuaiyun.com/sunbingxi_/article/details/5993198</guid><author>sunbingxi_</author><pubDate>Sun, 07 Nov 2010 14:13:00 +0800</pubDate><description><![CDATA[一个由C/C++编译的程序占用的内存分为以下几个部分 
1、栈区（stack）— 由编译器自动分配释放 
，存放函数的参数值，局部变量的值等。其操作方式类似于数据结构中的栈。 
2、堆区（heap） — 一般由程序员分配释放， 
若程序员不释放，程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事，分配方式倒是类似于链表. 
3、全局区（静态区）
（static）—，全局变量和静态变量的存储是放在一块的，初始化的全局变量和静态变量在一块区域， 
未初始化的全局变量和未初始化的静态变量在相]]></description><category></category></item><item><title><![CDATA[main() 函数的有参形式]]></title><link>https://blog.youkuaiyun.com/sunbingxi_/article/details/5992219</link><guid>https://blog.youkuaiyun.com/sunbingxi_/article/details/5992219</guid><author>sunbingxi_</author><pubDate>Sat, 06 Nov 2010 20:52:00 +0800</pubDate><description><![CDATA[初学C时看到的 main() 是无参函数，但是外界有时候要向 main 传递一些参数，这时候就要用到 main(int argc,char 
*argv[]) 这样的有参形式
argc int类型，记录命令和参数
的总个数，同时决定了 argv 指针数组的大小
argv
 是一个指针数组
实例化的解释一下：
假设你编译获得的可执行程序叫 test
那么无参数的命令 
$./test
传到main 里的 argc = 1 argv[0]="test" 
如果你的命令是带参数的呢， 如： ]]></description><category></category></item><item><title><![CDATA[微软strcpy，strcat和strcmp、memcpy的实现源代码]]></title><link>https://blog.youkuaiyun.com/sunbingxi_/article/details/5990077</link><guid>https://blog.youkuaiyun.com/sunbingxi_/article/details/5990077</guid><author>sunbingxi_</author><pubDate>Fri, 05 Nov 2010 16:07:00 +0800</pubDate><description><![CDATA[/****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]]></description><category></category></item></channel></rss>