首页 > 其他分享 >顺序表的建立与遍历

顺序表的建立与遍历

时间:2024-04-09 17:24:11浏览次数:25  
标签:遍历 elemarraySize 建立 int void ++ 顺序 arrayLength sqList

读入n值及n个整数,建立顺序表并遍历输出。

输入格式:
读入n及n个整数

输出格式:
输出n个整数,以空格分隔(最后一个数的后面没有空格)。

首先定义顺序表这个结构体

点击查看代码
typedef struct sqList{
   int arrayList[maxSize];
   int arrayLength;
}

需要初始化一个顺序表

点击查看代码
void initList(sqList &L) {
	L.arrayLength = 0;
}      //就是让他的长度等于0

然后,建立一个顺序表,并往里面输数

点击查看代码
void plusElem(sqList &L, int elemarraySize, int a[]) {
	for (int i = 0; i < elemarraySize; i++) {
		L.arrayList[i] = a[i];
		L.arrayLength ++;
	}
}
最后是遍历
点击查看代码
void displayList(sqList L) {
	if (L.arrayLength == 0)return;
	for (int i = 0; i < L.arrayLength - 1; i++) {
		cout<<L.arrayList[i]<<" ";
	}
	cout<<L.arrayList[L.arrayLength - 1];
}

完全代码:

点击查看代码
#include<iostream>
using namespace std;
#define maxSize  1000
typedef struct sqList{
	int arrayList[maxSize];
	int arrayLength;
}; 
void initList(sqList &L);
void plusElem(sqList &L, int elemarraySize, int a[]);
void displayList(sqList L);
int main() {
	sqList L;    //定义L是sqList类型的变量
	initList(L);
	int a[1000];
	int n;
	cin>>n;
	for (int i = 0; i < n; i++) {
		cin>>a[i];
	}
	plusElem(L,n,a);
	displayList(L);
}
void initList(sqList &L) {
	L.arrayLength = 0;
}
void plusElem(sqList &L, int elemarraySize, int a[]) {
	for (int i = 0; i < elemarraySize; i++) {
		L.arrayList[i] = a[i];
		L.arrayLength ++;
	}
}
void displayList(sqList L) {
	if (L.arrayLength == 0)return;
	for (int i = 0; i < L.arrayLength - 1; i++) {
		cout<<L.arrayList[i]<<" ";
	}
	cout<<L.arrayList[L.arrayLength - 1];
}

标签:遍历,elemarraySize,建立,int,void,++,顺序,arrayLength,sqList
From: https://www.cnblogs.com/sly-345/p/18124375

相关文章

  • java 对List<Map<String, Object>>遍历
    在Java中,遍历List<Map<String,Object>>可以通过多种方式来实现。以下是一些常见的方法:使用for-each循环javaList<Map<String,Object>>list=//初始化你的Listfor(Map<String,Object>map:list){for(Map.Entry<String,Object>entry:map.entrySet()){......
  • java 对Map<String, Object>遍历
    在Java中,你可以使用多种方法来遍历Map<String,Object>。以下是一些常见的方法:使用Map.Entry和IteratorjavaMap<String,Object>map=newHashMap<>();//添加一些键值对到map中Iterator<Map.Entry<String,Object>>iterator=map.entrySet().iterator();while(iterator.ha......
  • 为什么索引结构默认使用B+Tree?为什么需要注意联合索引中的顺序?最左前缀原则是什么?
    (1)为什么索引结构默认使用B+Tree,而不是B-Tree,Hash,二叉树,红黑树?B-tree:B+Tree相比于B-Tree,所有的数据都存储在叶子节点,并且叶子节点之间用指针相连形成了一个有序链表,这有利于范围查询和全表扫描时连续地读取磁盘上的数据,极大地降低了磁盘I/O次数。而在B-Tree中,数据分布在所有节......
  • 【题解】洛谷马的遍历
    马的遍历方法:广度优先搜索源代码如下#include<iostream>#include<queue>#include<cstdio>#include<cstring>usingnamespacestd;structcoord{//结构体定义x,y坐标intx,y;};queue<coord>Q;intans[500][500];//-1代表未访问intwalk[8......
  • C++ 遍历queue
    在C++中,std::queue是一个遵循先进先出(FIFO)原则的容器。由于std::queue不提供直接访问容器内部元素的方法,因此不能直接遍历。但是,您可以使用一个临时队列来遍历。以下是如何做到这一点的示例代码: #include<iostream>#include<queue>intmain(){std::queue<i......
  • 动态规划和层次遍历 —— [NOIP2002 普及组] 过河卒
    题目如下:[NOIP2002普及组]过河卒题目描述棋盘上AAA点有一个过河卒,需要走到目标BB......
  • 顺序表和链表
    目录1.线性表2.顺序表3.链表1.线性表线性表是n个具有相同特征的数据元素的有限序列。线性表是一种在实际中被广泛应用的数据结构,常见的线性表有:顺序表、链表、栈、队列、字符串…………线性表在逻辑上是线性结构,也就是一条连续的直线,但是在物理上并不一定是连续的,线......
  • 建立时间(setup time)和保持时间(hold time)
    一、基本概念1、建立时间就是时钟触发事件来临之前,数据需要保持稳定的最小时间,以便数据能够被时钟正确的采样。2、保持时间就是时钟触发事件来临之后,数据需要保持稳定的最小时间,以便数据能够被电路准确的传输。可以通俗的理解为:时钟到来之前,数据需要提前准备好;时钟到来之后,数据......
  • Oracle 递归遍历
    1、场景递归到第几层,例如递归到第2层   selectlevel,--层级wdj.*fromwip_discrete_jobs_vwdjwhere1=1startwithwdj.wip_entity_name='08363790'--递归开始connectbywdj.attribute3=priorwdj.wip_entity_nameandlevel<3; 2、一行数据出现两......
  • 实现顺序表的增删查改
    首先什么是顺序表呢?顺序表的底层结构是数组,对数组的封装,实现了常用的增删改查等接口。顺序表分为静态顺序表和动态顺序表~静态顺序表就是使用定长数组存储元素,这里有一个很大的缺陷,那就是空间给少了不够用,给多了造成空间浪费。所以。这里我们就来使用动态顺序表来实现增......