zoukankan      html  css  js  c++  java
  • 顺序表的封装

    #include<iostream>
    typedef  int DataType;
    typedef  int Status;
    #define MaxSize 100
    typedef struct
    {
        DataType data[MaxSize];
        int length;
    }SeqList;
    #define TRUE 1
    #define FALSE 0
    #define OK 1
    #define ERROR 0
    using namespace std;
    class SList
    {
        SeqList S;
    public:
         SList()
        {
            S.length=0;
        }
         Status ClearList()
         {
             S.length=0;
             return OK;
         }
         Status EmptyList()
         {
             if(S.length)
             {
                 return FALSE;
             }
             else
                 return OK;
         }
         int ListLengh()
         {
             return S.length;
         }
         int Locate(DataType e)
         {
             for(int i=0; i<S.length; i++)
             {
                 if(S.data[i]==e)
                 {
                     return i+1;
                 }
             }
             return FALSE;
         }
         DataType GetData( int k)
         {
             if(k<1||k>S.length)
             {
                 return FALSE;
             }
             return S.data[k-1];
         }
         void InsList()
         {  
             while(1)
             {   
                 bool b;
                 int pos;
                 DataType e;
                 cout<<"请输入位置插入:"<<endl;
                 cin>>pos;
                 pos--;
                 if(pos>=0&&pos<=S.length)
                 {
                     cout<<"请输入插入元素的值:"<<endl;
                     cin>>e;
                     for(int i=S.length-1; i>=pos; i--)
                    {
                        S.data[i+1]=S.data[i];
                     }
                     S.data[pos]=e;
                     S.length++;
                     cout<<"Success"<<endl;
                     cout<<"是否继续插入:   "<<endl;
                     cout<<"是          1"<<endl;
                     cout<<"否          0"<<endl;
                     cin>>b;
                     if(!b)
                     {
                         break;
                     }
                }
                 else   cout<<"位置非法"<<endl;
            }
    };
         Status DelList(DataType &e)
         {
             while(1)
             {   
                 bool b;
                 int pos;
                 cout<<"请输入删除位置:"<<endl;
                 cin>>pos;
                 pos--;
                 if(pos>=0&&pos<=S.length-1)
                 {
                    e=S.data[pos];
                    for(int i=pos; i<S.length-1; i++)
                    {
                        S.data[i]=S.data[i+1];
                     }
                     S.length--;
                     cout<<"Success"<<endl;
                     cout<<"是否继续删除:   "<<endl;
                     cout<<"是          1"<<endl;
                     cout<<"否          0"<<endl;
                     cin>>b;
                     if(!b)
                     {
                         break;
                     }
                }
                else   cout<<"位置非法"<<endl;
            }
             return OK;
         }
    };
    int main()
    {
        return 0;
    }

  • 相关阅读:
    NTFS的交换数据流ADS应用
    解决binwalk运行提示缺少LZMA模块
    蓝牙扫描工具btscanner修复暴力扫描模式
    iOS 11开发教程(二十)iOS11应用视图美化按钮之设置按钮的状态
    Visual Studio 2017 版本 15.5.5
    iOS 11开发教程(十九)iOS11应用视图美化按钮之设置按钮的外观
    jquery的基本api
    vue知识点总结
    历史记录
    http加密原理
  • 原文地址:https://www.cnblogs.com/Howbin/p/8639387.html
Copyright © 2011-2022 走看看