数据结构—顺序表的插入
来源:互联网 发布:安全加密软件 编辑:程序博客网 时间:2024/05/17 06:37
数据结构第一篇-顺序表
刚开始复习数据结构,感觉还是蛮吃力的,基础不是很好有太多不明白的点了,还好有个耐心极棒的蓝朋友(献花),虽然现在还不是很明白,但是我相信继续学习下去一定会拨开乌云的。
知识点:malloc函数原型:extern void* malloc(unsigned int num_bytes)
realloc函数原型:extern void* realloc(void* mem_address,unsigned int newsize),void*mem_address表示要改变内存大小的指针名,即要改变的是哪个指针指向的内存,unsigned int newsize是指要分配的新的大小(要大于原来的大小)
#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <stdlib.h>#define LISTINCREASE 10#define N 5typedef struct{int* BASE; //需要一段空间int LISTSIZE; //知道分配了多少空间*4int LENGTH; //顺序表里的元素个数//以上三个元素都是要你自己时刻维护的。} LIST;void INIT_LIST(LIST* list){list->LISTSIZE = 200;list->BASE = (int*)malloc(sizeof(int) * list->LISTSIZE);list->LENGTH = 0;}/*******void CREAT(LIST *list, int a[], int n){int i;for (i = 0; i < n; i++) list->BASE[i] = a[i];list->LENGTH = n;}************/void LISTINSERT(LIST* list, int i, int e){int index; //最后一个元素的下标,注意数组中下标与位置的关系if (i < 1 || i>list->LENGTH + 1)return;if (list->LENGTH > list->LISTSIZE){list->BASE = (int *)realloc(list->BASE, (list->LISTSIZE + LISTINCREASE)*sizeof(int));if (!list->BASE)return;list->LISTSIZE = list->LISTSIZE + LISTINCREASE;}for (index = list->LENGTH-1; index >= i - 1; index--){list->BASE[index+1] = list->BASE[index];}list->BASE[i-1] = e;list->LENGTH++;}/******void PRINT(LIST* list){int i;for (i = 0; i < list->LENGTH; i++) printf("%d ", list->BASE[i]);printf("\n");}************/int main(){LIST mylist;//mylist = NULL;这部分注释是因为之前将LIST mylist用LIST*mylist形式,这种形式也可以不过要加上下面那句注 释掉的才可以,自己要仔细琢磨一下,刚入门指针那块比较模糊。//mylist = (LIST*)malloc(sizeof(LIST));INIT_LIST(&mylist);for (int i = 0; i < N; i++){scanf("%d", &mylist.BASE[i]);mylist.LENGTH++; //这一句我刚开始没有加导致结果出错,因为LENGTH初始化为0,输入一个数后也要 将维护的LENGTH相应的加1}//CREAT(&mylist, a, 5);也可以用函数来实现输入输出LISTINSERT(&mylist, 3, 66);//PRINT(&mylist);for (int i = 0; i < N+1; i++){printf("%d ", mylist.BASE[i]);}return 0;}
0 0
- 顺序表的插入——数据结构
- 数据结构—顺序表的插入
- 【数据结构】顺序线性表的插入、删除、合并实现
- 数据结构之顺序表的创建、插入、删除、定位
- 数据结构-顺序线性表的初始化,插入,删除
- 数据结构之顺序表,插入,删除等
- [数据结构]顺序单链表插入
- 【数据结构_顺序表_List_0943】顺序表插入操作的实践
- 顺序表的插入
- 顺序表的插入
- 顺序表的插入
- 数据结构:线性表(顺序存储)顺序表类(实现顺序表的创建,输出,插入,删除功能)
- 顺序表——有序顺序表的插入
- QMap,QHash插入后的显示顺序以及记录插入顺序的数据结构
- 【数据结构】采用数组的形式实现顺序表的建立、插入、删除等操作
- 数据结构之线性表的顺序存储结构(数组)的插入与删除
- 【数据结构】线性表的顺序表示和实现,实现插入和删除算法,并且实现顺序表的合并
- 数据结构—顺序表
- SQL Server 2014远程访问,无法连接问题。
- 蓝桥杯 瓷砖铺放(dfs)
- 实验吧密码学WriteUp(三)
- matlab2016a+win10安装下载教程
- 转接IC MS2100:CVBS/S-Video转USB芯片
- 数据结构—顺序表的插入
- Android View的事件传递笔记
- C#—Form属性及方法
- ajax学习笔记
- 智能电网与配网自动化工程建设
- apt-get常用命令及工作原理
- JavaScript编程风格
- java编程思想 -- CLASSPATH路径
- ubuntu中挂载磁盘