shellsrt.cpp

来自「数据结构课程程序」· C++ 代码 · 共 64 行

CPP
64
字号
/******Don't forget to download*****
*****GRAPHICAL DATA FILE STRUCTURE*****
*****A approach to learn DFS Graphically*****
Only @  http://www.vivekpatel.cjb.net        */

//Shell Sort


//Programmed by : Vivek Patel
//URL : www.vivekpatel.cjb.net
//Email : vivek_patel9@rediffmail.com


#include <iostream.h>
#include <conio.h>
#define MAX 10

class shellsort{
	int arr[MAX],n;
	public:
	void getdata();
	void showdata();
	void sortLogic();
};

void shellsort :: getdata(){
	cout<<"How many elements you require : ";
	cin>>n;
	for(int i=0;i<n;i++)
		cin>>arr[i];
}

void shellsort :: showdata(){
	cout<<"\n--Display--\n";
	for(int i=0;i<n;i++)
		cout<<arr[i]<<"   ";
}

void shellsort :: sortLogic(){
	int i,j,temp,increment;

	for(increment=n/2; increment>0; increment /= 2){
		for(i=increment; i<n; i++){
			temp=arr[i];
			for(j=i; j>=increment; j -= increment){
				if(temp < arr[j-increment])
					arr[j] = arr[j-increment];
				else
					break;
			}
			arr[j] = temp;
		}
	}
}

void main(){
	clrscr();
	cout<<"\n*****Shell Sort*****\n";
	shellsort obj;
	obj.getdata();
	obj.sortLogic();
	obj.showdata();
	getch();
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?