插入一个元素x于递增顺序表并使其有序排列

数据结构

顺序表

笔试题:知一个顺序表L,其中的元素递增有序排列,设计一个算法,插入一个元素x(x为int型)后保持该顺序表仍然递增有序排列(假设插入操作总能成功)。

image

/*************************************************************************************
 *
 *  file name:  1.c
 *  author   : 	lu.ciana.598393@gmail.com
 *  date     :  2024/04/21
 *  function : 	已知一个顺序表L,其中的元素递增有序排列,设计一个算法,插入一个元素x(x为int型)后保持该顺序表仍然递增有序排列(假设插入操作总能成功)。
 *  note     :  None
 *  CopyRight (c)   2024    lu.ciana.598393@gmail.com   All Right Reserved
 *
 ************************************************************************************/
#include <stdio.h>
void Seqlist_Insert(Seqlist_t *L,int x)
{
    int i,j,n;
    //循环找出x插入的地址并保存
    for(i=0;i<=last;i++)
    {
        if(x<L[i])
		break;
    }
	 if(x>L[i])
	 	i++;
    //将需要插入后的地址从后往前全部挪动
    for(j=last;j>=i;j--)
            L[j+1]=L[j];
	L[i]=x;

posted @ 2024-04-23 02:26  luxiaolim  阅读(53)  评论(0)    收藏  举报