首页 > 其他分享 >数据结构之线性表之顺序表

数据结构之线性表之顺序表

时间:2024-12-25 18:58:09浏览次数:6  
标签:位置 线性表 元素 插入 表在 顺序 数据结构

定义:

由n(n>=0)个数据特性相同的元素构成的有限序列称为线性表

简单来说n个相同数据类型的数据组wsw合在一起的这么一个集合就是一个线性表

线性表包括顺序表和链表

1. 顺序表(我们所有的代码实现都用函数来封装)

(1)顺序表初始化代码实现:

(2)顺序表在尾部增加元素:

(3)遍历顺序表:

(4)顺序表在头部插入数据

看一下输出结果

(5)顺序表在某个位置查入一个数据

代码实现

结果

(5)顺序表在某个位置删除一个数据

代码实现

结果:

(6)顺序表查找数据

代码实现:

结果:

顺序表动态分配内存地址初始化

代码实现

结果:

顺序表总结:

1.无论是在头部插入还是在尾部插入还是在某个位置插入,我们插入完都要更新长度

2.给大家说一下在头部插入和在某在位置插入的一个重要逻辑

         无论是在头部插入还是在某在位置插入,它的核心是把当前要插入的元素和到最后一个元素都往后移一位,也就是说遍历从最后一个元素到当前位置的元素,从后往前遍历出的每一个元素往后移一位,这样就把当前位置空出来了,如果是删除一个数据,就从当前的数据覆盖为后一个数据,但是注意最后的长度不能超出,如果查找一个数据的位置,他的核心逻辑是遍历整个数组,找到与该元素符合的,就打印他的位置,返回后我们可以用这个位置进行删除

标签:位置,线性表,元素,插入,表在,顺序,数据结构
From: https://blog.csdn.net/a1001086/article/details/144643768

相关文章

  • 稀疏矩阵数据结构(如CSR、CSC格式)
    稀疏矩阵数据结构稀疏矩阵(SparseMatrix)是一种大多数元素为零的矩阵。在处理稀疏矩阵时,如果我们直接使用常规的二维数组来存储矩阵数据,将会浪费大量的存储空间,因为大部分元素都是零。为了解决这一问题,稀疏矩阵数据结构应运而生,通过只存储非零元素来大幅减少内存消耗。最常用的稀......
  • 「数据结构课程设计」二叉排序树与文件操作
    功能要求:(1)从键盘输入一组学生记录建立二叉排序树;(2)中序遍历二叉排序树;(3)求二叉排序树深度;(4)求二叉排序树的所有节点数和叶子节点数;(5)向二叉排序树插入一条学生记录;(6)从二叉排序树中删除一条学生记录;(7)从二叉排序树中查询一条学生记录;(8)以广义表的形式输出二叉排序树该文件也......
  • 【华为OD-E卷-最小调整顺序次数、特异性双端队列 100分(python、java、c++、js、c)】
    【华为OD-E卷-最小调整顺序次数、特异性双端队列100分(python、java、c++、js、c)】题目有一个特异性的双端队列,该队列可以从头部或尾部添加数据,但是只能从头部移出数据。小A依次执行2n个指令往队列中添加数据和移出数据。其中n个指令是添加数据(可能从头部添加、也可能从......
  • .NET 中的线程安全数据结构
    目录1.ConcurrentQueue2.ConcurrentStack3.ConcurrentBag4.ConcurrentDictionary<TKey,TValue>5.BlockingCollection6.ImmutableList7.SynchronizedCollection8.SynchronizedReadOnlyCollection9.SynchronizedKeyedCollection<K,T>在多线程编程中,线程安全的数据结构是......
  • 4、数据结构与算法解析(C语言版)--栈
    栈的数据存储遵循“后进先出的规则”,这在计算机里面是非常有用的,比如word等编辑软件的"撤销"功能,就是使用栈进行实现的。1、创建项目 main.h#ifndef_MAIN_H#define_MAIN_H#include<stdio.h>#include<stdlib.h>#include<time.h>#defineTRUE1#defineFALSE0......
  • 静态static小问题、顺序结构、选择结构(if(单分支、双分支、多分支)、switch)、循环结构
    静态static小问题20241224packagecom.pangHuHuStudyJava.scanner;importjava.util.Scanner;publicclassDemo04{publicstaticvoidmain(String[]args){inti;floatf;Scannerscanner=newScanner(System.in);//输入整数......
  • 省选集训 day 1 数据结构杂题
    A比较套路的题目,第一次见还是有难度的。关于\(+1\)的更改,事实上是找到二进制下极长的末尾\(1\)段并进位。考虑使用Trie维护这个操作,相当于建立一颗从低位开始的Trie,然后swap儿子并进入swap后的新左子树递归操作。然后对于邻域的问题,一般考虑每个点单独维护其儿子,然后特......
  • RK3568平台开发系列讲解(中断及异常篇)Linux 中断系统中的重要数据结构
    ......
  • 数据结构实验
    (一)线性表1#include<bits/stdc++.h>usingnamespacestd;intmain(){intn;multiset<int>ms;cin>>n;for(inti=1;i<=n;i++){intx;cin>>x;ms.insert(x);}intx;cin......
  • 数据结构实验
    (一)线性表1#include<bits/stdc++.h>usingnamespacestd;intmain(){intn;multiset<int>ms;cin>>n;for(inti=1;i<=n;i++){intx;cin>>x;ms.insert(x);}intx;cin......