C++完成次序表的經常使用操作(拔出刪出查找輸入)。本站提示廣大學習愛好者:(C++完成次序表的經常使用操作(拔出刪出查找輸入))文章只能為提供參考,不一定能成為您想要的結果。以下是C++完成次序表的經常使用操作(拔出刪出查找輸入)正文
完成次序表的拔出,刪除,查找,輸入操作在C說話中常常用到。上面小編給年夜家整頓完成代碼,一路看下吧
代碼以下所示:
#include<iostream> using namespace std; #define MAXSIZE 15 typedef int DataType; typedef struct { DataType data[MAXSIZE]; //平日用一名數組來描寫次序表的數據存儲 int SeqLength; /*線性表長度*/ } SeqList; SeqList *Init_SeqList(); //初始化次序表 void Define_SeqList(SeqList *L,int n); //填充次序表的內容 void Display_SeqList(SeqList *L); //提取次序表中的元素 int Insert_SeqList(SeqList *L,int i,DataType x); //添加元素到指定地位(從開端) int Delete_SeqList(SeqList *L,int i); //刪除指定地位的元素(從開端) 【Sequence.cpp】 #include "Sequence.h" #include<iostream> using namespace std; SeqList *Init_SeqList()//次序表的初始化算法,將次序表清空 { SeqList *L; L=new SeqList; L->SeqLength=0; /*長度置為-1*/ return L; } void Define_SeqList(SeqList *L,int n)//次序表的界說算法 { cout<<"請順次輸出次序表中要貯存的元素:"<<endl; for(int i=0;i<n;i++) { cin>>L->data[i]; //輸出數組元素 L->SeqLength++; } } void Display_SeqList(SeqList *L)//次序表的輸入算法 { cout<<"次序表中貯存的元素為"<<endl; int i; for(i=0;i<=L->SeqLength-1;i++) { cout<<L->data[i]<<" "; } cout<<endl; } int Insert_SeqList(SeqList *L,int i,DataType x) //次序表的拔出算法 { cout<<"把元素"<<x<<"拔出到地位"<<i<<"上"<<endl; int j; if(L->SeqLength==MAXSIZE-1) //數組長度等於設定值-1,則表滿 { cout<<"表滿"<<endl; return -1; } if(i<1||i>L->SeqLength+1) //拔出地位在第一個之前,或許拔出到年夜於以後數組的長度+1 { cout<<"地位錯"<<endl; return 0; } for(j=L->SeqLength-1;j>=i;j--) //i以後全體後移 { L->data[j+1]=L->data[j]; } L->data[i]=x; //將元素填充到空白地位 L->SeqLength++; cout<<"拔出勝利"<<endl; Display_SeqList(L); return 1; } int Delete_SeqList(SeqList *L,int i)//次序表的刪除算法 { cout<<"將地位為"<<i<<"的元素刪除"<<endl; int j; if(i<1||i>L->SeqLength) { cout<<"不存在第"<<i<<"個元素"<<endl; return 0; } for(j=i;j<=L->SeqLength-1;j++) { L->data[j]=L->data[j+1]; //i索引以後全體前移 } L->SeqLength--; cout<<"刪除勝利"<<endl; Display_SeqList(L); return 1; }
【Test_Sequence.cpp】
#include "Sequence.h" #include<iostream> using namespace std; int main() { SeqList *L;//次序表的界說 L=Init_SeqList();//次序表的初始化 Define_SeqList(L,6);//界說次序表 Display_SeqList(L);//次序表的輸入 Insert_SeqList(L,4,3);//次序表的拔出 Insert_SeqList(L,6,21); Insert_SeqList(L,2,15); Delete_SeqList(L,5);//次序表的刪除 Delete_SeqList(L,3); Delete_SeqList(L,12); return 0; }
後果以下:
以上所述是小編給年夜家引見的C++完成次序表的經常使用操作(拔出刪出查找輸入),願望對年夜家有所贊助,假如年夜家有任何疑問請給我留言,小編會實時答復年夜家的。在此也異常感激年夜家對網站的支撐!