1. 程式人生 > >資料結構練習題

資料結構練習題

閱讀以下演算法,填充空格,使其成為完整的演算法。其功能是在一個非遞減的順序儲存線性表中,刪除所有值相等的多餘元素

#include <stdio.h>
#define maxlen 30

typedef struct
{
        int elem[maxlen];
        int lenth;      //存放順序表中元素個數
} sqlisttp;

void demo(sqlisttp *L)
{
    int i = 1, j = 0;   
    while (i<L->lenth)
    {
        if (L->elem[i] != L->elem[j])
        {
            j++;
            L->elem[j]=L->elem[i];
        }
        i++;
    }
    L->lenth=j;
}

int
main(void) { int i; sqlisttp L; for (i = 0; i <= 15; i++) { L.elem[i] = i / 2; } L.lenth = i; for (i = 0; i < L.lenth; i++) { printf("%d, ", L.elem[i]); } printf("\n"); demo(&L); for (i = 0; i <= L.lenth; i++) { printf
("%d, ", L.elem[i]); } printf("\n"); return 0; }