zoukankan      html  css  js  c++  java
  • C++ | 数组反转的三种方法

    //数组反转
    #include <iostream>
    #include<array>
    using namespace std;
    int main()
    {
    int i;
    array <int,7> a={1,2,3,4,5,6,7};
    array <int,7> b;
    b=a;//备份数组a
     for(i=0;i<a.size()/2;i++)
      a[i]=b[b.size()-1-i];
     for(i=0;i<a.size()/2;i++)
        a[a.size()-1-i]=b[i];
    for(i=0;i<a.size();i++)
     cout << a[i]<<",";
    }
    
    //中间变量法
    #include <iostream>
    #include<array>
    using namespace std;
    int main()
    {
    int i,t;
    array <int,7> a={1,2,3,4,5,6,7};
     for(i=0;i<a.size()/2;i++)
      {t=a[i];
      a[i]=a[a.size()-1-i];
      a[a.size()-1-i]=t;
      }
    for(i=0;i<a.size();i++)
     cout << a[i]<<",";
    }
    
    //异或法 e.g. 3^4=7,7^4=3,7^3=4=>a=a^b,b=a^b,a=a^b
    #include <iostream>
    #include<array>
    using namespace std;
    int main()
    {
    int i;
    array <int,7> a={1,2,3,4,5,6,7};
     for(i=0;i<a.size()/2;i++)
      {a[i]^=a[a.size()-1-i];
      a[a.size()-1-i]^=a[i];
      a[i]^=a[a.size()-1-i];
      }
    for(i=0;i<a.size();i++)
     cout << a[i]<<",";
    }
    

  • 相关阅读:
    第四周作业及总结
    第三周作业及其总结
    第二周作业及总结
    我所敬佩的老师
    秋季学习总结
    自我介绍
    寒三总结
    2019春第7周作业
    2019春第六周作业
    2019春第五周作业
  • 原文地址:https://www.cnblogs.com/zuoanfengxi/p/13442126.html
Copyright © 2011-2022 走看看