排序算法3--插入排序

来源:互联网 发布:强哥呼死你软件 编辑:程序博客网 时间:2024/05/16 10:47
 
template <class T>
void insertion_sort(T *Array, int Size, bool Ascending = true)
{
    assert(Array 
!= NULL);
    assert(Size 
>= 2);
    
    
int i, temp;

    
if (Ascending)
    
{
        
for (i = 1; i < Size; i++)
        
{
            temp 
= Array[i];
            
while (temp < Array[i-1&& i > 0)
            
{
                Array[i] 
= Array[i-1];
                i
--;
            }

            Array[i] 
= temp;
        }

    }

    
else
    
{
        
for (i = 1; i < Size; i++)
        
{
            temp 
= Array[i];
            
while (temp > Array[i-1&& i > 0)
            
{
                Array[i] 
= Array[i-1];
                i
--;
            }

            Array[i] 
= temp;
        }

    }

}
原创粉丝点击