智健blog

顺序表有序插入数据

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define maxsize 100
typedef struct {
    int data[maxsize];
    int length;
}SqNode;

int FindEle(SqNode &L,int x){
    int j=0;
    for (; j < L.length; ++j) {
        if (x<L.data[j]){
            return j;
        }
    }
    return j;
}

SqNode * InsertEle(SqNode &L, int data) {
    int index;
    index=FindEle(L,data);
    for (int j = L.length-1; j >=index ; --j)
        L.data[j+1]=L.data[j];

    printf("%d\n",index);
    L.data[index]=data;
    ++L.length;
}

int main(){

        SqNode Node={
                {0,2,3,4,5,6,7,8},
                8
        };

        InsertEle(Node,10);
        printf("%d\n",Node.length);
    for (int i = 0; i < Node.length; ++i) {
        printf("%d ",Node.data[i]);
    }

    }
posted @ 2020-06-21 22:19  智健  阅读(717)  评论(0编辑  收藏  举报