若一个线性表L采用顺序结构存储,其中所以元素为整数。设计一个算法,将所有小于零的元素移到所有大于零的元素的前面,要求算法

1个回答

  • void move(SeqList *L)

    {

    int i, j;

    int temp;

    for (i = 0, j = L->length -1; i < j; )

    {

    while (i < j && L->data[i] < 0)

    i ++;

    while (i < j && L->data[j] > 0)

    j --;

    if (i < j)

    {

    temp = L->data[i];

    L->data[i] = L->data[j];

    L->data[j] = temp;

    }

    }

    }