static
void BubbleSortForwardList(My402List *pList)
{
    My402ListElem *elem=NULL;
    int i=0;

    if (My402ListLength(pList) == 0) {
        fprintf(stderr, "List is empty!");
        PrintErrorMessage();
        exit(1);
    }
    for (i=0; i < My402ListLength(pList); i++) {
        int j=0, something_swapped=FALSE;
        My402ListElem *next_elem=NULL;

        for (elem=My402ListFirst(pList), j=0; j < My402ListLength(pList)-i-1; elem=next_elem, j++) {
           unsigned int cur_val=(unsigned int)((TransactionElem *)(elem->obj))->eleTime, next_val=0;

            next_elem=My402ListNext(pList, elem);
            next_val = (unsigned int)((TransactionElem *)(next_elem->obj))->eleTime;

            if (cur_val > next_val) {
                BubbleForward(pList, &elem, &next_elem);
                something_swapped = TRUE;
            }
        }
        if (!something_swapped) break;
    }
}
static
void BubbleSortForwardList(My402List *pList, int num_items)
{
    My402ListElem *elem=NULL;
    int i=0;

    if (My402ListLength(pList) != num_items) {
        fprintf(stderr, "List length is not %1d in BubbleSortForwardList().\n", num_items);
        exit(1);
    }
    for (i=0; i < num_items; i++) {
        int j=0, something_swapped=FALSE;
        My402ListElem *next_elem=NULL;

        for (elem=My402ListFirst(pList), j=0; j < num_items-i-1; elem=next_elem, j++) {
            int cur_val=(int)(elem->obj), next_val=0;

            next_elem=My402ListNext(pList, elem);
            next_val = (int)(next_elem->obj);

            if (cur_val > next_val) {
                BubbleForward(pList, &elem, &next_elem);
                something_swapped = TRUE;
            }
        }
        if (!something_swapped) break;
    }
}
示例#3
0
void BubbleSortForwardList(My402List *pList, int num_items)

{

        My402ListElem *elem=NULL;   
        int i=0;  
        tfile_list* tmp1;

        if (My402ListLength(pList) != num_items) {
            fprintf(stderr, "List length is not %1d in BubbleSortForwardList().\n", num_items);
            exit(1);

        }

        for (i=0; i < num_items; i++) {
            int j=0, something_swapped=FALSE;
            My402ListElem *next_elem=NULL;

            for (elem=My402ListFirst(pList), j=0; j < num_items-i-1; elem=next_elem, j++) {

                tmp1 = (tfile_list*) elem -> obj;
                long cur_val=/*(long)*/atol(tmp1->tran_time);
                long next_val=0;

                next_elem=My402ListNext(pList, elem);
                tfile_list* tmp2 = (tfile_list*) next_elem -> obj;



                next_val = /*(long)*/atol(tmp2->tran_time);





                if (cur_val > next_val) {

                    BubbleForward(pList, &elem, &next_elem);

                    something_swapped = TRUE;

                }

            }

            if (!something_swapped) break;

        }

}