返回顶部

收藏

数组逆序

更多
#include <stdio.h>

inline void xchg(int *a,int *b)
{
    (*a)^=(*b);//^=(*a)^=(*b);
    (*b)^=(*a);
    (*a)^=(*b);
}

void reverse(int a[],int n)
{
    static int c = 0;
    if(c<n/2)
    {
        xchg(&a[c],&a[n-c-1]);
        ++c;
        reverse(a,n);
    }
}

void show(int a[],int n)
{
    int i;
    for(i=0;i<n;i++)
    {
        printf("%*s%d",i,"",a[i]);
    }
}

int main()
{
    int a[]={1,2,4,5,3,6};
    reverse(a,6);
    show(a,6);
    return 0;
}
//该片段来自于http://outofmemory.cn

标签:c++,算法

收藏

0人收藏

支持

0

反对

0

»更多 您可能感兴趣的代码
  1. 2014-10-29 17:12:53C++算法之克鲁斯卡尔算法 by niutao.linux
  2. 2014-11-02 10:06:44C++算法之数据选择问题 by niutao.linux
  3. 2014-11-19 12:29:49Fibonacci 搜索法 by niutao.linux
  4. 2014-11-22 10:11:32求一列数的最小公倍数 by qqmmcc
  5. 2012-11-13 20:16:04c++使用堆,查找数组中最小的k个数 by 香格里拉登
  6. 2014-03-28 20:20:14C++算法之线性结构处理 by lucasli
  7. 2014-05-18 21:55:46大数阶乘算法 by lucasli
  8. 2014-05-19 16:50:59k阶裴波那契序列 by 童学芬
  9. 2014-05-22 14:43:08自编随机数 by sxgkwei
  10. 2014-06-11 12:18:25最大公约数,最小公倍数 by 灵剑子
  11. 2014-06-15 12:47:28一个非常经典的hash算法 by sxgkwei

发表评论