zoukankan      html  css  js  c++  java
  • 设计一个算法将一个顺序表逆置

    #include<iostream>
    #include<malloc.h>
    using namespace std;
    typedef struct {
     int length;//保存长度
     int data[40];//数组
    } SqList;
    /*算法1:设计一个高效的算法,将顺序表中的所有元素逆置、要求算法空间股咋度为o(1)*/
    //初始化顺序表
    void initReverse(SqList &s,int *a,int l){
    
            s.length=0;
            //插入元素
            for(int i=0;i<l;i++){
                    s.data[i]=a[i];
            }
            s.length=l;
    
            //先输出所有元素
            for(int i=0;i<s.length;i++){
                    cout<<s.data[i]<<" ";
            }
            cout<<endl;
            //逆置
            int m=s.length/2;
            int start=0,end=s.length-1,temp;
    
            while(start<end){
                    temp=s.data[start];
                    s.data[start]=s.data[end];
                    s.data[end]=temp;
                    start++;
                    end--;
            }
            //输出并且销毁 系统自动销毁 无需操作
            for(int i=0;i<s.length;i++){
                    cout<<s.data[i]<<" ";
            }
            cout<<endl;
    
    }
    using namespace std;
    int main(){
            SqList s;
            int a[6]={1,2,3,4,5,6};
            initReverse(s,a,6);
    
            return 0;
    }
  • 相关阅读:
    视图类
    基于前一天再补充
    多表与基表等概念
    模块与序列化
    vue简单实现购物车列表功能
    再顾vue
    再探vue
    iptables编辑
    python 字符串替换、正则查找替换
    Map的遍历
  • 原文地址:https://www.cnblogs.com/webcyh/p/11359562.html
Copyright © 2011-2022 走看看