c++
void shellsort(int a[], int n)
{
int i, j, gap;
for (gap = n / 2; gap > 0; gap /= 2)
for (i = gap; i < n; i++)
for (j = i - gap; j >= 0 && a[j] > a[j + gap]; j -= gap)
Swap(a[j], a[j + gap]);
}
JavaScript
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title></title>
</head>
<body>
<script>
function hellSort(arr){
var n=arr.length;
for(var gap=Number.parseInt(n/2);gap>0;gap=Number.parseInt(gap/2)){
for(var i=0;i<n;i+=gap){
for(var j=i;j<i+gap&&j+gap<n;j++){
if(arr[j]>arr[j+gap]){
var temp=arr[j+gap];
arr[j+gap]=arr[j];
arr[j]=temp;
}
}
}
}
alert(arr);
}
var arrEX=[4,1,3,10,9,3,6,4];hillSort(arrEX);
</script>
</body>
</html>