算法(将x插入线性表合适的位置)

    科技2022-07-20  96

    直接上代码

    void insert(sqlist *L,int x) { int i,j,t; i = L->length-1; //直接定义成数组表示的形式 while(i>=0 && x < L->data[i])//必须要大于等于0 因为最后一个数是a[0] { i--; } //在x等于这个数的那个节点 i 跳出 printf("%d\n",i); for(j = L->length-1;j >= i+1;j-- )//i+1 因为判断成功的那个数在最后一次判断的前面 { L->data[j+1] = L->data[j]; } L->data[i+1] = x; L->length++; for(j = 0;j<L->length;j++) { printf("%d\n",L->data[j]); } }

    完整代码

    #include<stdio.h> typedef int elemtype; typedef struct { elemtype data[100]; int length; }sqlist; void insert(sqlist L) int main() { int x,c; sqlist L= {.data={1,4,6,8,9},.length=5}; printf("\n输入插入的数");scanf("%d",&x);
    Processed: 0.013, SQL: 8