顺序表的生成和插入
来源:互联网 发布:界面设计用什么软件 编辑:程序博客网 时间:2024/05/28 05:13
// Mergelist.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include <cstdlib>
#include <iostream>
#include <stdio.h>
#define list_init_size 100
#define listincrement 10
void InitList_Sq();
void ListInsert_Sq();
void Creat();
typedef struct{
int *elem;
int length;
int lisesize;
int *newbase;
}SqList;
SqList L;
void InitList_Sq(){
L.elem=(int*)malloc(list_init_size*sizeof(int));
if(!L.elem)
{
printf("The memory is full");
exit(1);
}
L.length=0;
L.lisesize=list_init_size;
}
//建立顺序表
void Creat(){
int a,b,i=0;
printf("请输入结点数:\n");
scanf_s("%d",&a);
printf("请输入各个结点的值:\n",i);
if(a>list_init_size-1||a<0){
printf("分配失败\n");
exit(1);
};
for (i=0;i!=a;++i){
scanf_s("%d",&b);
L.elem[i]=b;
++L.length;
}
}
//插入元素操作
void ListInsert_Sq(){
int e,i;
int *q,*p;
printf("请输入插入结点的值:\n");
scanf_s("%d", &e);
printf("请输入插入结点的位置:\n");
scanf_s("%d", &i);
if(i<1||i>L.length+1)
exit(1);
if(L.length>=L.lisesize){
L.newbase=(int*)realloc(L.elem,(L.lisesize+listincrement)*sizeof(int));
if(!L.newbase){
printf("The memory is full");
exit(1);
}
L.elem=L.newbase;
L.lisesize+=listincrement;
}
q=&(L.elem[i-1]);
for(p=&(L.elem[L.length=1]);p>=q;--p)
*(p+1)=*p;
*q=e;
++L.length;
//插入后值
printf("插入后值表为:\n");
for(int i=0;i<=L.length;i++){
printf("%d\t",L.elem[i]);
}
}
int main()
{
InitList_Sq();
Creat();
ListInsert_Sq();
system("PAUSE");
}
- 顺序表的生成和插入
- 顺序表的生成、初始化、插入、删除
- 顺序表的插入
- 顺序表的插入
- 顺序表的插入
- 顺序线性表和单链表的插入,删除操作
- 顺序表的插入运算
- 【应用】顺序表的插入
- 有序顺序表的插入
- 有序顺序表的插入
- 顺序表中静态顺序表的创建、插入和删除一个元素(源码分析)
- 顺序表及基本运算 && 在表头插入生成单链表 && 在表尾插入生成单链表
- 顺序表中的删除和插入
- 链表的正序生成、插入和倒置
- oracle数据库并不保证sequence生成顺序与的数据插入顺序的保持一致。
- oracle数据库并不保证sequence生成顺序与的数据插入顺序的保持一致。
- 【数据结构】线性表的顺序表示和实现,实现插入和删除算法,并且实现顺序表的合并
- 2、B-树的插入和生成
- TStringList的Find(慎用),IndexOf和Sort
- 我最喜欢的10条编程语录
- 学习一年java的迷茫!!
- Qt数据库编程 SQL连接
- BCB解析ICMPV6_ECHO_REPLY
- 顺序表的生成和插入
- 存储过程相关
- iphone-使用TextField及关闭键盘(useing TextField for inputs、using the keyboard)
- c#不可忍受之慢——谁是罪魁祸首
- MySQL卸载
- Java四大核心
- Maven之开始手工搭建第一个maven工程(二)
- 进程/线程同步——Critical Section,Mutex,Semaphore,Event区别
- linux常用压缩比测评