一些算法

 1 #include <iostream>
 2 #include <cstring>
 3 using namespace std;
 4 void shellsort(int v[],int n)
 5 {
 6     int gap,i,j,temp;
 7     for (gap = n/2 ; gap >0 ; gap /= 2)
 8     {
 9         for (i = gap; i < n ; ++i)
10         {
11             for (j = i - gap ; j >=0 && v[j] > v[j+gap] ; j -= gap)
12             {
13                 temp = v[j];
14                 v[j] = v[j + gap];
15                 v[j+gap] = temp;
16             }
17         }
18     }
19 }
20 //倒置字符串s中各个字符的位置
21 void reverse(char s[])
22 {
23     int ch;
24     for (int i = 0,j = strlen(s) - 1;i < j ; i++,j-- )
25     {
26         ch = s[i];
27         s[i] = s[j];
28         s[j] = ch;
29     }
30 }
31 //将整数n转换为字符串并保存在s中
32 void itoa(int n ,char s[])
33 {
34     int i ,sign;
35     if ((sign = n) < 0 )
36     {
37         n = -n;
38     }
39     i = 0;
40     do 
41     {
42         s[i++] = n%10 +'0';
43     } while (( n = n/10) > 0 );
44     if (sign < 0 )
45     {
46         s[i++] = '-';
47     }
48     s[i] = '