shell sort.cpp

来自「经典算法实现」· C++ 代码 · 共 26 行

CPP
26
字号
#include "Sort.h"

void insert(int beg,int increment,int len){

	for(int i=increment;i<len;i +=increment){
			
		for (int j=i;j>0 && arr[j+beg]<arr[j+beg-increment];j-=increment)	{
						swap(arr[j+beg],arr[beg+j-increment]);	
		}

	}
}

void shellSort(){
	//insert(1,num);

	int dis = num/2;
	for (;dis>0;dis /=2)
	{
		for (int i=0;i<dis;i++)
		{
			insert(i,dis,num);
		}
	}

}

⌨️ 快捷键说明

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