#include <stdlib.h>
#include <stdio.h>
#define maxarray 10
typedef struct LNode //定义单链表节点
{
int data;
struct LNode * next;
}LNode,*Linklist;
/*---------------------------------------
函数名:ShellInsert
类型:void
功能:一趟增量为d的直接插入排序
过程:第i趟排序时,将arr[i]插入到已经有序增量为d的(arr[0]..arr[i-1])中
---------------------------------------*/
void ShellInsert(int arr[],int n,int d);
/*---------------------------------------
函数名:ShelllSort
类型:void
功能:希尔排序
过程:按数组d[dj]中元素为增量进行希尔排序
---------------------------------------*/
void ShellSort(int arr[],int n,int d[],int dj);
/*-----------------------------------------
函数类型:void
函数作用:将元素newdata从单链表尾插入至链表L
------------------------------------------*/
void RearInsert(Linklist &L,int newdata);
/*-----------------------------------------
函数类型:void
函数作用:输入数字至单链表L
------------------------------------------*/
void NumToLinklist(Linklist &L,int &dj);