ช่วยทีนะคะ..เรื่อง sequentialSearch กับ binary search
คือ ตอนนี้เขียนโปรแกรม sort แล้วอ่ะค่ะ แต่ต้องการให้มันค้นหาข้อมูลด้วย sequentialSearch กับ binary search โดยแบ่งเป็นเรื่องละฟังก์ชั่น ช่วยดูให้ทีนะคะ
#include<iostream> #include<math.h> #define max 20 using namespace std; class Sortdata{ private: int dataA[max]; int dataB[max]; int n; public: Sortdata(){ n=0; } void inputdata(){ cout<<"Input NUM of array : "; cin>>n; for(int i=1;i<=n;i++){ cout<<"dataA["<<i<<"] = "; cin>>dataA[i]; } } void Copy_to_B(){ for(int i=1;i<=n;i++) dataB[i] = dataA[i]; } void disPlay(){ cout<<" :::::output:::: "<<endl; for(int i=1;i<=n;i++) cout<<"data["<<i<<"] = "<<dataB[i]<<endl; } void swape(int x,int y){ int temp; temp=dataB[y]; dataB[y]=dataB[x]; dataB[x]=temp; } void insertionSort(){ for(int i=2,j=0;i<=n;i++){ j=i; int sort=1; while(j>1 && sort){ if(dataB[j-1] > dataB[j]) swape(j,j-1); else sort=0; j=j-1; } } } void bubbleSort(){ int sort=1; int e=n; while(e>=1 && sort){ sort=0; for(int j=1;j<=e;j++){ if(dataB[j]>dataB[j+1]){ swape(j,j+1); sort=1; } } e--; } } void sequentialSearch(){ // } void binary Search(){ // }
};
int menu(){ int choice=0; system("clear"); printf("\n\n\n\n\n\n\n\n"); printf(" * A R R A Y *\n"); printf(" ==============\n"); printf(" 1) Input data\n"); printf(" 2) Copy to B\n"); printf(" 3) insertion Sort \n"); printf(" 4) Bubble Sort \n"); printf(" 5) Sequential Search \n"); printf(" 6) binary Search \n"); printf(" 7) Display data\n"); printf(" 8) Exit\n"); printf(" ==============\n"); while(choice < 8 || choice >1) { cout<<"\n Please select 1...7 or 8 (Exit) : "; cin>>choice; } return choice; }
int main(){ int choice; Sortdata arr; do{ choice = menu(); switch(choice){ case 1: cout<<"\n*** Insert dataA \n"; arr.inputdata(); break; case 2: cout<<"\n*** Copy to B \n"; arr.Copy_to_B(); break; case 3: cout<<"\n*** InsertionSort\n"; arr.insertionSort(); break; case 4: cout<<"\n*** Bubble Sort\n"; arr.bubbleSort(); break; case 5: cout<<"\n*** Sequential Search\n"; arr.sequentialSearch(); break; case 6: cout<<"\n*** binary Search\n"; arr.binarySearch(); break; case 7: cout<<"\n*** Display \n"; arr.disPlay(); break; default : cout<<"\n Bye!!!!!.... \n"; exit(1); } getchar(); getchar(); } while(1); return 0; }
|