引自《算法导论》:
==============================================
#include<iostream>
using namespace std;
#include<iostream>
using namespace std;
int main()
{
int A[10];
cout << "input six numbers:" << endl;
for (int i = 1; i <= 6; i++)
{
cin >> A[i];
}
int key,k;
for (int j = 2; j <= 6; j++)
{
key = A[j];
k = j - 1;
while (k > 0 && A[k] > key)
{
A[k + 1] = A[k];
k = k - 1;
}
A[k + 1] = key;
}
for (int i = 1; i <= 6; i++)
{
cout << A[i] <<" ";
}
return 0;
}
{
int A[10];
cout << "input six numbers:" << endl;
for (int i = 1; i <= 6; i++)
{
cin >> A[i];
}
int key,k;
for (int j = 2; j <= 6; j++)
{
key = A[j];
k = j - 1;
while (k > 0 && A[k] > key)
{
A[k + 1] = A[k];
k = k - 1;
}
A[k + 1] = key;
}
for (int i = 1; i <= 6; i++)
{
cout << A[i] <<" ";
}
return 0;
}
=================================================
Python:
Python:
A = [5,2,4,6,1,3]
for j in range(1,len(A)):
key = A[j]
key = A[j]
i = j - 1
while i >= 0 and A[i] > key:
A[i + 1] = A[i]
i = i - 1
A[i + 1] = key
while i >= 0 and A[i] > key:
A[i + 1] = A[i]
i = i - 1
A[i + 1] = key
print(A)
===============================================