博客
关于我
往递增的线性表中插入一个元素使之插入后的线性表还是递增的
阅读量:359 次
发布时间:2019-03-04

本文共 783 字,大约阅读时间需要 2 分钟。

1. 问题描述:

往递增的线性表中插入一个元素使之插入后的线性表还是递增的

2. 思路分析:

先要对线性表进行初始化,使用一个for循环即可,然后查找出线性表中第一个比当前要插入的元素大的位置,然后将元素插入到前面就可以了

具体的代码如下:

#include 
#define maxSize 11using namespace std;//采用顺表表的方式来进行存储(数组) typedef struct Sqlist { int data[maxSize]; int length;}Sqlist;Sqlist L;int findElem(Sqlist L, int x) { int i; for(i = 0; i < L.length; i++){ if(L.data[i] >= x){ return i; } }}void insertElem(Sqlist &L, int x){ int p, i; p = findElem(L, x); for (i = L.length - 1; i >= p; --i) L.data[i + 1] = L.data[i]; L.data[p] = x; ++(L.length);}int main() { L.data[maxSize]; for(int i = 0; i < 10; i++){ L.data[i] = i; } L.length = 10; for(int i = 0; i < L.length; i++){ cout << L.data[i]; } cout << endl; insertElem(L, 3); for(int i = 0; i < L.length; i++){ cout << L.data[i]; } return 0;}

 

转载地址:http://wewg.baihongyu.com/

你可能感兴趣的文章
mysql中json_extract的使用方法
查看>>
mysql中kill掉所有锁表的进程
查看>>
mysql中like % %模糊查询
查看>>
MySql中mvcc学习记录
查看>>
mysql中null和空字符串的区别与问题!
查看>>