博客
关于我
往递增的线性表中插入一个元素使之插入后的线性表还是递增的
阅读量: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之连接查询,多表连接
查看>>
mysql乐观锁总结和实践 - 青葱岁月 - ITeye博客
查看>>
mysql也能注册到eureka_SpringCloud如何向Eureka中进行注册微服务-百度经验
查看>>
mysql乱码
查看>>
Mysql事务。开启事务、脏读、不可重复读、幻读、隔离级别
查看>>
MySQL事务与锁详解
查看>>
MySQL事务原理以及MVCC详解
查看>>
MySQL事务及其特性与锁机制
查看>>
mysql事务理解
查看>>
MySQL事务详解结合MVCC机制的理解
查看>>
MySQL事务隔离级别:读未提交、读已提交、可重复读和串行
查看>>
MySQL事务隔离级别:读未提交、读已提交、可重复读和串行
查看>>
webpack css文件处理
查看>>
mysql二进制包安装和遇到的问题
查看>>
MySql二进制日志的应用及恢復
查看>>
mysql互换表中两列数据方法
查看>>
mysql五补充部分:SQL逻辑查询语句执行顺序
查看>>
mysql交互式连接&非交互式连接
查看>>
MySQL什么情况下会导致索引失效
查看>>
Mysql什么时候建索引
查看>>