当前位置: 首页 > news >正文

微信移动网站建设做电影网站用什么空间

微信移动网站建设,做电影网站用什么空间,重庆工程造价信息2021,建设门户网站的目的线性表是由零个或多个数据元素组成的有序序列。 特点: 数据元素间是有顺序的; 数据元素的个数是有限的; 一般来说,数据元素的类型是相同的(强类型语言)。c/c是强类型语言,必须指定数据类型。…

线性表是由零个或多个数据元素组成的有序序列。

特点:

  • 数据元素间是有顺序的;

  • 数据元素的个数是有限的;

  • 一般来说,数据元素的类型是相同的(强类型语言)。c/c++是强类型语言,必须指定数据类型。jsphppython等语言是弱类型就不需要指定数据类型。

线性表的顺序存储结构指的是用一段连续的存储空间来存储线性表中的数据元素,数组就是一个典型的顺序存储结构。

下面实现一个动态数组。

头文件

#pragma once
class DynamicArray
{
private://成员变量int* data;//data指向存放数据元素的内存空间,堆区空间,数据元素类型默认是整数int size;//动态数组的大小,多少个数据元素,也就是线性表的长度int capacity;//动态数组容量
public://特殊成员函数DynamicArray();//无参构造DynamicArray(int capacity);//有参构造~DynamicArray();//析构//普通成员函数//尾部添加元素void pushBack(int value);//打印动态数组void printDynamicArray();//在指定位置前插入元素void insertByIndex(int index,int value);//查询相关操作int getCapacity();//返回动态数组容量int getSize();//返回动态数组的大小int getValueByIndex(int index);//返回指定位置的元素int front();//返回动态数组第一个元素int back();//返回动态数组最后一个元素//删除元素void popBack();//删除最后一个元素void delByIndex(int index);//删除元素
};

源文件

#include<iostream>
#include"dynamicArray.h"
using namespace std;
#include<time.h>
DynamicArray::DynamicArray()//无参构造,初始化成员变量
{capacity = 5;//动态数组默认长度为5data = new int[capacity];//data指向五个大小的内存空间size = 0;
}
DynamicArray::DynamicArray(int capacity)//有参构造,传入容量
{this->capacity = capacity;data = new int[capacity];size = 0;
}
DynamicArray::~DynamicArray()//析构,释放内存空间
{if(data!=nullptr){delete[]data;data = nullptr;}
}
void DynamicArray::pushBack(int value)
{//考虑容量够不够if (capacity == size)//容量已满,需要扩容,扩充一倍{int* temp_data = new int[capacity * 2];//复制原始空间数据到新空间for (int i = 0; i < size; i++){temp_data[i] = data[i];}delete[]data;//释放原始空间data = temp_data;capacity = capacity * 2;}data[size] = value;size++;
}
void DynamicArray::insertByIndex(int index, int value)
{if (index<0 || index>size - 1){return;}if (capacity == size){int* temp_data = new int[capacity * 2];for (int i = 0; i < size; i++){temp_data[i] = data[i];}delete[]data;//释放原始空间data = temp_data;//更新成员变量capacity = capacity * 2;//更新容量//新元素插在index前,index开始的元素都往后移for (int i = size - 1; i >= index; i--){data[i + 1] = data[i];}data[index] = value;size++;}
}
void DynamicArray::printDynamicArray()
{for (int i = 0; i < size; i++){cout << data[i]<<" ";}cout << endl;
}
int DynamicArray::getCapacity()
{return capacity;
}
int DynamicArray::getSize()
{return size;
}
int DynamicArray::getValueByIndex(int index)
{if (index<0 || index>size - 1){return NULL;}return data[index];
}
int DynamicArray::front()
{if (size>0){return data[0];}return NULL;
}
int DynamicArray::back()
{if (size > 0){return data[size - 1];}return NULL;
}
void DynamicArray::popBack()
{if (size > 0){size--;}
}
void DynamicArray::delByIndex(int index)
{if (index<0 || index>size - 1){return;}for (int i = index; i < size - 1; i++){data[i] = data[i + 1];}size--;
}
void test_dynamicarray()
{//DynamicArray dy;DynamicArray* dy = new DynamicArray();//堆对象dy->pushBack(11);dy->pushBack(12);dy->pushBack(13);dy->pushBack(14);dy->pushBack(15);dy->printDynamicArray();dy->insertByIndex(2, 88);dy->printDynamicArray();cout<<"动态数组容量为"<<dy->getCapacity()<<endl;/*for (int i = 0; i < 5; i++){dy->pushBack(i + 20);}dy->printDynamicArray();cout << "动态数组容量为" << dy->getCapacity() << endl;*/cout << "动态数组的大小" << dy->getSize()<<endl;cout << "下标为三的元素" << dy->getValueByIndex(3) << endl;cout << "动态数组第一个元素是" << dy->front()<<endl;cout << "动态数组最后一个元素是" << dy->back() << endl;;dy->popBack();dy->printDynamicArray();dy->delByIndex(2);dy->printDynamicArray();delete dy;
}
void test_homework()
{srand((unsigned int)time(0));//srand(time(0));DynamicArray d;//DynamicArray* dy = new DynamicArray(8);for (int i = 0; i < 8; i++){d.pushBack(rand() % 41+60);//生成0-19之间的整数}//d.pushBack(5);//d.pushBack(7);//d.pushBack(8);//d.pushBack(6);//d.pushBack(2);//d.pushBack(1);//d.pushBack(9);d.printDynamicArray();for (int i = 0; i < d.getSize();){if (d.getValueByIndex(i)%2!=0){d.delByIndex(i);}else{i++;}}d.printDynamicArray();}
int main()
{//test_dynamicarray();test_homework();return 0;
}

http://www.dtcms.com/a/399626.html

相关文章:

  • 银行测试存款业务(四)
  • C#练习题——匿名方法与闭包实战:函数式编程的优雅实现
  • 西安有哪些网站设计公司seo排名优化推广报价
  • 深圳安鸿源建设网站上海网站建站建设服务
  • H3C 三层VLAN路由实验
  • 深圳做购物网站小米发布会8月
  • 【GPT入门】第71课 autogen介绍与代码实现股票分析汇报多智能体
  • 网页源码 html源码网站 网页源代码模板
  • 北京网站优化前景集团网站策划方案
  • 怎么打帮人做网站开发的广告常熟市住房建设局网站
  • 深度学习(6)pytorch
  • 函数(Num008)
  • MySQL8.0版本在Windows下进行安装
  • 站长seo工具图文素材库免费
  • 前端核心框架vue之(指令篇1/5)
  • 山东小语种网站建设免费高清视频素材app哪里找
  • 嵌入式Python环境深度解读与精益裁剪指南
  • 如何排查Windows事件ID 7000 服务启动失败
  • Java面试题大全1000+面试题附答案详解
  • LangChain:LLMs和ChatModels介绍、LangChain 集成大模型的本地部署与 API 调用实践、提示词prompt、输出解析器、链
  • spring中手动事务控制(提交、回滚事务)
  • 高端医疗网站开发用广州seo推广获精准访问量
  • 如何让本地使用 Ollama 部署的开源大模型(LLM)识别图片和 Excel 文件
  • 高低温试验有哪些类型?委托第三方做高低温试验的流程
  • print!/println!宏详解
  • 谢岗镇仿做网站经营性商务网站建设需要备案吗
  • 崂山区建设局网站郑州付费系统网站开发建设
  • xxl-job 执行器在 host 网络模式下注册到错误 IP 的问题与解决方案
  • 网站建站 seowordpress防止机器人注册
  • 网站建设需要服务器支持 吗营销活动